最近因爲跟着一個安全項目,發現其中的安全產品中的一項監控每場有趣。可以監測到系統進程的主動連接行爲並獲取連接的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())