Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/dkgee/public_monitors
公网IP扫描
https://github.com/dkgee/public_monitors
Last synced: 3 days ago
JSON representation
公网IP扫描
- Host: GitHub
- URL: https://github.com/dkgee/public_monitors
- Owner: dkgee
- Created: 2019-05-29T07:42:35.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2023-08-01T09:50:50.000Z (over 1 year ago)
- Last Synced: 2024-11-21T19:38:49.272Z (21 days ago)
- Language: Python
- Size: 212 KB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-hacking-lists - dkgee/public_monitors - 公网IP扫描 (Python)
README
# public_monitors 0.1
本项目基于PublicMonitors 0.1修改,供自己使用。
在CentOS7系统上,基于python 2.7, python3.x 测试可用。
这个脚本的主要目标是以甲方安全人员的视角,对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
>
> wget https://github.com/robertdavidgraham/masscan/archive/refs/tags/1.3.2.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
>
> ##### 注意:Python 2的环境最高支持pip20,pip21已经不再支持python2.7
>
> easy_install pip==20.3.4
>
> sudo pip install -U pip
>
> sudo pip install -r requirements.txt
>
> ##### 第二种方法安装pip
>
> curl https://bootstrap.pypa.io/pip/2.7/get-pip.py -o get-pip.py
>
> sudo python get-pip.py
>## 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](pic/111.png)
## output ##
输出目录默认:./out/
![Screenshot](pic/444.png)
![Screenshot](pic/555.png)
## email ##
![Screenshot](pic/222.png)
![Screenshot](pic/333.png)
## Star History
[![Star History Chart](https://api.star-history.com/svg?repos=dkgee/public_monitors&type=Date)](https://star-history.com/#dkgee/public_monitors&Date)