• Stars
    star
    305
  • Rank 136,066 (Top 3 %)
  • Language
    Python
  • Created almost 7 years ago
  • Updated almost 7 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

本项目致力于收集网上公开来源的威胁情报,主要关注信誉类威胁情报(如IP/域名等),以及事件类威胁情报。

Ti_Collector


Ti_Collector为Threat Intelligence Collector,主要关注网上公开的信誉类威胁情报和事件类威胁情报。

信誉类威胁情报主要来源于一些安全社区的分享;事件类威胁情报主要来源于安全企业的咨询分享。

这些威胁情报数据通过爬虫手段,经分类处理后自动存入到数据库中,以构建自身的威胁情报库。

同时,我们提供一个捕获和查询本机DNS纪录中是否存在威胁行为的程序。

整个流程如图所示。

流程

Code Introduction


ThreatFeedSpider

  • 说明

      ThreatFeedSpider中包含了31个爬虫,爬取了31个不同的信誉类威胁情报来源,然后按类存放到数据库中。
    
      这些数据大概包括1090000个ip地址,4600个域名,14000个url。
    
      scripts目录下:(1)存有相关feed的爬虫脚本;(2)feed_id.txt 存有相关feed与数据库中存储的source_id的对照
    
  • 环境要求

      测试计算机用的Ubuntu 16.04.1,Windows 10 x86_64,python 2.7,MySQL 5.7.20
    
      python依赖环境为:MySQLdb
    
  • 数据库

     sql目录中的TiDB.sql文件,构建数据库以及数据库表格。
     
     使用MySQL数据库时,请自行修改连接的数据库参数。
    
  • 使用

     首先要运行sql目录下的建库脚本。
     
     然后再运行RunThreatSpider.py之前,请自行修改60.py脚本和download.py脚本内与数据库有关的语句和参数。
    
     在ThreatFeedSpider目录下,通过命令 python RunThreatSpider.py,调用scripts目录下的脚本文件,
     
     通过脚本将feed下的威胁情报录入数据库。
    
     注:由于网络问题,个别feed网站不可到达而出现timeout报错。
    

ThreatArticleSpider

  • 说明

      处理事件类威胁情报,在现阶段只有一个爬取文章链接的爬虫ThreatArticleSpider.py
      
      后续会陆续增加爬取链接的脚本和从文章中提取相应IoC信息的脚本。
    
  • 使用

      直接运行命令 python ThreatArticleSpider.py 即可。
    
  • 结果

      运行过程中会存储大量的html文件,这些文件为链接的来源,不需要的可以自行删除。
    
      运行完成后会生成一个ret.json文件存储网站上的链接,用户可自行判断其中的链接是否有进一步处理的价值。 
    
      Result目录下存储的是我们整理的文章中的事件类威胁情报,以#开头的是来源和时间,其余的是IoC信息。
    

DNS-Sniffer

  • 说明

      DNS-Sniffer是用来捕获DNS请求包的程序,用C写成,内涵源码和编译好的程序,
      
      在Linux和Windows环境下可以直接使用RunSniffer.py启动。
      
      Windows下也可以直接运行DNS.exe。运行时会生成一个Dns.txt文件来存储DNS记录。
    
  • 环境要求

    1.Windows环境

      该程序要用到Winpcap,一般情况下都已经安装了,如果没有安装可以在Windows文件夹下找到它的安装文件
      
      WinPcap_4_1_2.exe(64);推荐使用本项目自带的WinPcap_4_1_2.exe(64),以避免版本冲突。
      
      VS中需配置项目属性 详情请参看:http://www.cnblogs.com/laddielan/p/5405534.html。
      
      安装Winpcap并配置好项目属性后,打开源码用VS2013及以上版本直接编译生成即可。
    

    2.Linux环境

      安装libcap库,Ubuntu输入命令apt-get install libpcap-dev即可安装。
      
      CentOS参考http://www.cnblogs.com/wawahaha/p/3821486.html
      
      编译:安装好库后,进入Linux文件夹下执行make就可生成可执行文件dns。
    
  • 使用

      直接在同一目录下运行RunSniffer.py即可。 Linux下需要以管理员权限运行
    
      注意:
    
      Winpcap和Libpcap这两个是必须安装的,不然既无法运行而且也无法编译源码生成可执行文件,
      
      python需要2.x版本,3.x版本运行RunSniffer.py会报错。
    
      Windows下电脑电源设置为从不休眠,因为休眠后会关闭嗅探器。
    

request.py

  • 说明

      用来判断NDS-Sniffer捕获到的DNS纪录中是否有威胁情报中记录的恶意行为。
    
      在查询到有恶意DNS记录后会输出警告,脚本运行完后会生成一个结果文件Result.txt
    
  • 环境要求

      python:MySQLdb库
    
      数据库的信息要自行设置
    
  • 使用

      使用时要将DNS-Sniffer生成的待查文件Dns.txt放入同一个目录下。进入该目录直接运行命令:python request.py即可。
    
      如果用户修改了数据库的信息,要在request.py中的相应位置修改数据库信息。  
    

Screenshots


ThreatFeedSpider

run

DNS-Sniffer生成的文件dns.txt

dns.txt

request.py

结果

联系我们


有任何需要讨论的问题,不要犹豫,联系我们。

邮箱:[email protected]

More Repositories

1

threat-intelligence

收集的一些国外能提供提供威胁情报的公司,涵盖网络安全、工控安全、终端安全、移动安全等领域
435
star
2

telnet-scanner

telnet服务密码撞库
Python
259
star
3

ssh-scanner

ssh password guessing,ssh登录密码破解
Shell
206
star
4

ctf_ics_traffic

工控CTF比赛工具,各种网络数据包处理脚本
Python
111
star
5

ControlXiaomiDevices

This repository is a set of python scripts to control xiaomi IoT device。这个项目是一组Python脚本程序,用来控制小米智能家居设备
Python
76
star
6

Deceptive-document

通过在U盘中伪装正常文件,欺骗用户点击,传播木马的一个demo程序~just for fun~
C++
67
star
7

check_ip

check_IP is to judge whether a IP is malicious based on open threat intelligence,基于开源威胁情报AlienVault,排查IP地址及域名的恶意性
Python
51
star
8

IP-location

batch query IP location information,批量查询IP地理位置信息,解析pcap包中IP地址的地理信息
Python
50
star
9

StreamDump

tcp stream dump with BPF filter rules | bidirection | domain
Go
48
star
10

firmware_analysis

物联网设备分析环境搭建与工具使用,包括脚本换阿里源、binwalk的完整安装、firmwalker和rips的使用
PHP
40
star
11

string_match

实现并对比了各类字符串匹配算法,包括Sunday、KMP、Boyer-Moore、horspool
C
23
star
12

IoT_bot

A sample IoT bot origin from Mirai
C
20
star
13

ICS-packets-Analyzer

It can analyse the packets of ICS
Python
19
star
14

Attack-Technique-Dataset

A dataset containing APT group related articles and MITRE ATT&CK technique descriptions
Python
15
star
15

ctf_vxworks

CTF比赛,VxWorks弱hash算法,密码碰撞解析
C
12
star
16

optimize_model

本项目主要功能是自动完成特征选择与参数调试,用于优化随机森林模型,本项目的特征文件来自于文献“Two-layer detection framework with a high accuracy and efficiency for a malware family over the TLS protocol”中的部分研究。
Python
7
star
17

net-kernel

netfilter hook kernel module for IoT devices
C
5
star
18

https_packets_decrypt

用私钥手动解HTTPS数据包的实验素材
5
star
19

malware_traffic_crawler

To download malware traffic from two sources.
Python
3
star
20

PaperFeatures

Features of distance-based method.
2
star
21

Mechanize-Email

使用mechanize对谷歌做模拟点击以及模拟点击失败之后的email通知
Python
1
star