• Stars
    star
    607
  • Rank 73,845 (Top 2 %)
  • Language
    Python
  • Created almost 7 years ago
  • Updated over 3 years ago

Reviews

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

Repository Details

对公网IP列表进行端口服务扫描,发现周期内的端口服务变化情况和弱口令安全风险

PublicMonitors 0.1

这个脚本的主要目标是以甲方安全人员的视角,对IP列表进行定时端口服务扫描,及时发现对外违规开放服务和存在风险的服务端口,并生成excel结果,进行邮件通知。

Author

咚咚呛

如有其他建议,可联系微信280495355

Support

满足如下安全需求

1、对列表IP进行快速全端口扫描
2、周期时间(如每日)增加/减少哪些些端口服务
3、开放的端口服务是否存在弱口令风险
4、输出所有结果到excel,并发送Email通知

技术细节如下:

1、调用Masscan进行快速扫描
2、调用Nmap进行端口服务名称判断
3、以IP+端口+服务名称为标准,与上一次的结果向比较,判断增加和减少服务
4、为防止漏报,减少的服务进行二次nmap扫描,判断是否漏扫
5、针对结果进行弱口令扫描
6、发送所有结果到email

Test Environment

CentOS Linux release 7.3.1611 (Core)

Dependencies

sudo yum install nmap

sudo yum install hydra (hydra v8.0+ 版支持redis服务)

yum install git gcc make libpcap-devel.x86_64

wget https://github.com/robertdavidgraham/masscan/archive/1.0.4.tar.gz

tar -zxvf 1.0.4.tar.gz

cd masscan-1.0.4/

make

cp bin/masscan /bin/masscan

git clone https://github.com/grayddq/PublicMonitors.git

sudo pip install -U pip

sudo pip install -r requirements.txt

Tree

PubilcAssetInfo
----conf   #配置目录
----lib    #模块库文件
----log    #日志目录
----out    #输出目录
----tmp    #临时目录
----PublicMonitors.py   #主程序

Config

配置目录:./conf/info.conf

[OPTIONS]
#IP列表文件目录
ip_file = conf/ip.txt
#弱口令账户和密码,不填写则代表不进行弱口令扫描。pass.txt默认包含top100密码
db_user = conf/user.txt
db_pass = conf/pass.txt
#扫描类型,monitors / weakpass /all
#monitors 代表最终不进行弱口令扫描
#weakpass 针对最后的一次扫描结果进行弱口令扫描
#all      代表端口监听后进行弱口令扫描
type = all

[Masscan]
#Masscan扫描器的发包数量,越大越快但漏扫量越多,1M~=2000,
rate = 2000

[Email]
#不填写则代表不发送邮箱通知
#发送的邮箱账户和密码
user = 
pass = 
#目标邮箱
target_email = 
#smtp的server名称,如163邮箱则填写smtp.163.com
smtp_server = 

Log

日志目录默认:./conf/info.conf

Screenshot

Screenshot

output

输出目录默认:./out/

Screenshot

Screenshot

email

Screenshot

Screenshot

More Repositories

1

GScan

本程序旨在为安全应急响应人员对Linux主机排查时提供便利,实现主机侧Checklist的自动全面化检测,根据检测结果自动数据聚合,进行黑客攻击路径溯源。
Python
2,593
star
2

EBurst

这个脚本主要提供对Exchange邮件服务器的账户爆破功能,集成了现有主流接口的爆破方式。
Python
322
star
3

ScanCVE

监控github上CVE增量,并发送微信通知
Python
131
star
4

HIDS

HIDS全称是Host-based Intrusion Detection System,即基于主机型入侵检测系统,HIDS运行依赖这样一个原理:一个成功的入侵者一般而言都会留下他们入侵的痕迹。本人更倾向于通过记录主机的重要信息变更来发现入侵者。 本项目由两部分组成:一部分osquery、另一部分监控脚本来补充osquery规则的不足; 本文是第一部分osquery规则部分,实现绝大部分主机信息监控。
100
star
5

PublicSecScan

针对大量WEB资产进行分布式WEB安全扫描,发现web环境下常规的一些安全漏洞
Python
99
star
6

PubilcAssetInfo

以甲方安全人员的视角,尽可能收集发现企业的域名和服务器公网IP资产
Python
65
star
7

PassiveSecCheck

自动化被动扫描系统分为数据源、数据处理、漏洞验证等三个子系统,本系统属于漏洞验证部分,根据提供的数据进行分布式安全验证,确定是否包含相关严重漏洞。
Python
49
star
8

PassiveDataSorting

自动化被动扫描系统分为数据源、数据处理、漏洞验证等三个子系统,本系统属于数据处理部分,抓取流量镜像的数据,进行分析过滤去重等操作,发送至消息队列中,等待PassiveSecCheck消费
Python
35
star
9

PypiScan

这个脚本主要提供对pypi供应链的源头进行安全扫描研究,扫描并发现未知的恶意包情况。
Python
31
star
10

SSRF_payload

本脚本旨在生成各类畸形URL链接,进行探测使用的payload,尝试绕过服务端ssrf限制。
Python
29
star
11

PicLocation

快速获取图片的GPS和其拍摄地理位置
Python
20
star
12

FileCheck

本脚本是HIDS组成的一部分,旨在对指定监控目录进行文件hash记录,定时运行,发现文件替换、修改等后门可疑程序。
Python
13
star
13

CodeInspect

以代码发布的方式,从根本上实现WEBShell、网马或恶意链接等安全方面的检测。
Python
8
star
14

NetWorkCheck

本脚本旨在对内网服务器对外链接进行监控,监控对外网链接的进程信息。多数用于不存在或存在少量codeback等服务器环境下,用于事后追溯和事件发现,可作为反弹shell监控的一部分部署。
Python
8
star
15

IPCreate

这个脚本主要目标是解析IP网段(127.0.0.1/30或者127.0.0.1-127.0.0.10)列表内容,并生成所有可用的IP信息到指定文件。
Python
7
star
16

PassiveLogSorting

自动化被动扫描系统分为数据源、数据处理、漏洞验证等三个子系统,本系统属于数据处理部分,当流量镜像没权限施行时,可退而求其次,把web日志当作数据源进行分析,并进行过滤去重等操作,发送至消息队列中,等待PassiveSecCheck漏洞验证消费
Python
5
star