2013-04-24 35 views
1

在研究項目中工作時,我已經能夠通過運行psutil的get_connections並將匹配的遠程地址與數據包的IP目標匹配到scapy(python)中,從而將出站數據包半成功匹配到其源應用程序。 。目標是識別所有出站數據包的源應用程序並通過安全檢查運行它們。不幸的是,似乎get_connections的CPU使用率非常高。運行top,而我的腳本工作表明python一直佔用30%到100.5%的CPU(好吧,後者只是短暫的一段時間)。是否有更好(更有效)的方式來確定哪些應用正在生成數據包?如果不是直接,是否有更有效的方法將建立的連接與應用程序進行匹配?如何高效地確定應用程序生成數據包

+0

假設Linux的,最有效的方法是[攔截系統調用(http://stackoverflow.com/questions/69859/how-could- i-intercept-linux-sys-calls),儘管這可能是過度殺毒,取決於你想要達到的目標。 – Aya 2013-04-24 19:21:26

+0

你可以用[SELinux](http://en.wikipedia.org/wiki/Security-Enhanced_Linux)或[AppArmor](http://en.wikipedia.org/wiki/AppArmor)來做到這一點,所以你應該在編寫自己的解決方案之前,可能要先看看那些人。 – Aya 2013-04-24 19:35:14

+0

好的。您可能應該在原始問題中包含任何約束條件,包括本地系統與所述「外部交換機」進行通信的協議。 – Aya 2013-04-24 19:59:55

回答

2
+0

謝謝。如果這是可靠的,它可能會訣竅! :) – Dolphiniac 2013-04-24 20:15:58

+0

它工作了嗎? @Dolphiniac – RyPeck 2013-05-08 19:06:24

+0

它似乎會。我已經安裝好了,一切都正是我要找的。現在開始以某種方式讀取它創建的設備中的所有額外標題。 :P – Dolphiniac 2013-05-08 19:09:10

相關問題