閑趣 python監控主動外連的異常行為

2021-09-24 16:48:15 字數 808 閱讀 5498

最近因為跟著乙個安全專案,發現其中的安全產品中的一項監控每場有趣。可以監測到系統程序的主動連線行為並獲取連線的ip,並且有些ip可以反查到網域名稱。並在近期的一項活動中根據此項日誌可以分析出挖礦(連線礦池)、勒索病毒、遠控(連線被控主機),當然這些都要配合著威脅情報。

然後自己也閒的無趣,苦中作樂通過python也可以實現監測程序的主動外聯的情況。當然使用的是python 的 psutil。主要實現邏輯是先收穫網路連線情況,然後根據發起的pid 獲取程序名 某些還能夠獲取物理路徑 。當然要實現連線的ip反查網域名稱也可以實現,不過沒有必要。現在已經可以把主動連線的資訊收集上來了,如下圖:

從而可以再進一步分析 這就是後期可以進一步補充得了

核心**如下:

def test():

network_connection = psutil.net_connections() # 獲取網路連線情況

for i in network_connection:

temp = psutil.process(i.pid)

try:

print("pid:", i.pid, "連線情況:", i.laddr,"程序名:", temp.name(),"物理路徑:", temp.cwd())

except:

# pass

print("pid:", i.pid,"連線情況:", i.laddr,"程序名:", temp.name())

MySQL 表的內連和外連

內連線實際上就是利用 where 子句對兩種表形成的笛卡兒積進行篩選 標準語法 select 字段 from 表1 inner join 表2 on 連線條件 and 其他條件 例如 顯示 ld 的名字和部門名稱 前面練習過的 用標準寫法 select ename,dname from emp in...

MySQL表的內連和外連

內連線實際上就是利用where子句對兩種表形成的笛卡兒積進行篩選,我們前面學習的查詢都是內連線,也是在開發過程中使用的最多的連線查詢。select 字段 from 表1 inner join 表2 on 連線條件 and 其他條件 案例 顯示smith的名字和部門名稱 用前面的寫法 select e...

MySQL 之 表的內連和外連

資料庫中表的連線分為內連 1.內連線 內連線實際上就是利用where子句對兩種表形成的笛卡兒積進行篩選。語法 select 字段 from 表1 inner join 表2 on 連線條件 and 其他條件 eg 顯示smith的名字和部門名稱 用標準的內連線寫法 select ename,dnam...