qingfro9님의 블로그 입니다.

[정보보안][tool]msticpy 본문

정보보안/TOOL

[정보보안][tool]msticpy

qingfro9 2020. 2. 28. 02:20


MS에서 TI관련 오픈소스 도구를 공개했다.
 
 

좀 정리하면서 내가 생각했던 그런 툴은 아니였고, 그래서 더 정리는 안하고 본 내용들만 공유할려고 한다.
 
 
이미 잘 정의된 글이 있었고, 작성이 19년 6월 이구만.!
 
여기 제목에도 있는 것처럼 Python Defender Tools다. 올해부터는 샘플 관리를 잘해야해서, 쓰던 시스템을 다시 돌려보려고 하는데, 이 툴은 Defender의 역할이지, 내가 개인 관리 시스템에 녹일 수 있는 건 없을 거 같다. 위에 블로그 내용이 깃에 있는 내용보다 더 좋으니, 위 링크를 보는것을 더 추천한다.
 
Security Investigation with Azure Sentinel and Jupyter Notebooks – Part 1 : link
Security Investigation with Azure Sentinel and Jupyter Notebooks – Part 2 : link
Security Investigation with Azure Sentinel and Jupyter Notebooks – Part 3 : link
 

*정리 안하고 막 적어서 이상하게 정리되었을 수도 있습니다.
 
 
README.md를 읽으면서 정리한 내용
 
 MSTIC라고 불리는 이 툴은 MicroSoft Threat IntelligenCe 를 줄여서 부르는 것으로 보이며, 툴의 풀네임은 msticpy(Microsoft Threat Intelligence Python Secutiry Tools)이다. 
 
Jupyter NoteBook과 Azure를 사용해서 구현하였으며 보안과 관련된 다양한 기능들을 가지고 있다.
 
- 그림. msticpy도구 화면
 
이 도구는 3개의 main sub-packages를 사용한다.
- sectools : 파이썬에서 보안관련 도구로 데이터 강화 및 분석, 조사할 때 사용
- nbtools : 주피터관련 UI 도구로 위젯, 플로팅 및 기타 데이터 표시할 때 사용
- data : Azure Sentinel, MDATP 및 다른 데이터 소스에 대한 데이터 케층 및 미리 정의된 쿼리를 사용
 
설치
 
두 가지 방법으로 설치가 가능하다.
 
$ pip install msticpy
$ pip install git+https://github.com/microsoft/msticpy
 
 
도큐먼트
 
ReadTheDocs : link
모듈들에 대한 다양한 정보에 대한 docs/notebooks 폴더 : link
 
 
Security Tools Sub-package-sectools
이 서브 패키지는 다양한 기능을 가지고 있다. 그중에 보안 조사 및 헌팅을 하는데 도움을 주는 기능들을 가지고 있다.
 
base64unpack
Base64Unpack Notebook : link
 
 
iocextract
iocextractNotebook : link
정규표현식을 사용해서 입력되는 문자열 셋에서 ioc정보를 추출해준다.
 
- IPv4, IPv6
- URL
- DNS domain
- Hashes(MD5, SHA1, SHA256)
- Windows file path
- Linux file paths(제대로 추출되지 않을 수 있음)
 
추가로 정규표현식 추가가 가능하다.
 
tiproviders
TILookup Isage Notebook : link
 
TILookup class는 AlienVault OTX, IBM XForce, VirusTotal, Azure Sentinel에서 IoC정보를 가져올 수 있다.
 
사용을 위해서는 API 키가 필요하다.
 
vtlookup
 
바이러스 토탈 API를 사용해 정보를 추출해 주는 기능
 
- Filehash
- URL
- DNS Domain
- IPv4 Address
 
VTLookup Notebook : link
 
geoip
GeoIP Lookip Notebook : link
IP주소에 해당되는 곳을 지도로 보여주는 기능
 
이곳에서는 추가로 2개의 기능을 분류하여 제공
- GeoLiteLookup  : Maxmind Geolite : link
- IPStackLookup : IPStack : link
 
두 서비스 모두 비상업적인 용도로 무료로 제공된다. (유료일 경우는 정확도, 세부 사항, 처리속도에서 차이를 보임)
Maxmind Geolite(GeoLiteLookup)는 다운로드 가능한 데이터 베이스를 사용하며, IPStack(IPStackLookup)은 API키를 사용해 데이터를 읽어오게 된다.
 
eventcluster
 
Event Clustering Notebook : link
 
이 모듈은 많은 수의 이벤트를 다른 패턴의 클러스터로 요약하는데 사용된다. (많은 양의 반복적인 이벤트로 인해서 중요한 이벤트가 보이지 않을 수 있다.)
 
 
이 모듈은 사이킨 런(Scikit learn) DBScan을 기반으로 개발되었다. 
 
 
outliers
(아직 테스트가 많이 필요한 기능이며,eventcluster와 유사하다.)
차이라면, SKLearn lsolation Forest를 사용해 단일 데이터 세트에서 특이한 이벤트를 식별하거나, 하나의 데이터 세트를 학습 데이터로 사용하고 다른 데이터 세트를 특이 치로 예측하는데 사용된다.
 
 
auditdextract
리눅스 audit log를 로드하고 디코딩 하는 모듈
(현재 계속 개발 진행 중인 모듈)
 
syslog_utils
syslog가 활성화 되어 있는 리눅스 시스템을 조사할 때 사용할 수 있는 모듈
호스트 데이터 조합, 로그온 이벤트 클러스터링, 의심스러운 활동이 확인된 사용자의 세션 감지 기능이 포함
 
cmd_line
알려진 악의적인 명령어 실행 또는 의심스러운 명령어 실행을 패턴 탐지를 지원 하는 모듈
 
 
Notebook tools sub-package - nbtools
 
Notebook Tools Notebook : link  and Event Timeline Visualization : link
 
Jypyter 노트북의 보안 데이터 작업을 보다 빠르고 쉽게 수행할 수 있도록 설계하였으며, collection 확인이라던지 유틸리티들을 확인하기 편리하게 만들었다?
 
- nbwidgets :  list pickers, time boundary 설정, 검색 기록 등과 같은 기능
- nbdisplay : 위험 이벤트 등과 같은 이벤트를 보여주는 기능
- entityschma : Log Analytics Alerts 및 모듈내에서 확인할 수 있는 정보들을 보여줌 (host 계정, IP주소)
 
Data sub-package - data
nbtools 하위 패키지에 포함됨
- QueryProvider 
- security_alert and security_event 
- entity_schema 
 
Data Queries Notebook : link
 

'정보보안 > TOOL' 카테고리의 다른 글

homebrew 2020 top tool 정리  (0) 2020.02.25
[정보보안][tool]Frida #1  (0) 2020.02.20
[정보보안][Tool]Cerbero Suite 도구 관련된 내용  (0) 2020.01.23
[TOOL]hwpscan 버전체크 문제  (0) 2018.07.29
[TOOL]hwp parser 조사  (0) 2018.07.29
Comments