Python/Python for Windows
[Python] 윈도우 netstat 명령어를 활용하여 아웃바운드 IP와 포트 추출
Pydole
2018. 4. 15. 03:28
파이썬을 이용한 윈도우의 netstat -n 명령어를 이용하여 아웃바운드IP와 포트 그리고 빈도수를 출력
* netstat : 모든 연결과 수신 대기 포트를 표시
* option : -n 주소와 포트 번호를 숫자 형식으로 표시
netstat -n 명령어의 출력을 지정된 파일에 적재. (sample 초당 100번. 많으면 많을 수록 더 많은 데이터가 수집)
import os
import time
cnt = 0
while cnt < 100:
os.system('netstat -n >> 경로') # netstat -n 지정된 경로 파일적재
cnt += 1
time.sleep(1)
자신의 IP와 127.0.0.1을 제외한 IP와 포트 그리고 빈도 수를 출력
import collections
import re
ipnPort = re.findall(r'\d+[.]\d+[.]\d+[.]\d+[:]\d+', open(filename).read().lower())
for x, y in collections.Counter(ipnPort).most_common():
if str(x).rpartition(':')[0] == '127.0.0.1' or str(x).rpartition(':')[0] == '자신IP':
pass
else:
print(str(x)+'\t'+str(y))