chaos:一款整合了ChatGPT的源IP扫描工具

关于chaos

chaos是一款功能强大的源IP地址扫描工具,该工具整合了ChatGPT的功能,主要面向的是安全渗透测试人员和漏洞Hunter。

这里所说的源IP,指的是通过第三方公开服务托管的网站所使用的最终公共IP目的地址。

功能介绍

1、支持多线程以实现高性能运行;

2、实时状态更新和进度条,适用于大规模扫描;

3、针对各种场景和限制设置了灵活的用户参数选项;

4、减少数据集以缩短扫描时间;

5、易于使用;

6、支持CSV格式输出;

 

工具安装

由于该工具基于纯Python 3开发,因此我们首先需要在本地设备上安装并配置好Python 3环境。接下来,广大研究人员可以使用下列命令将该项目源码克隆至本地:

git clone https://github.com/r57-labs/chaos.git

然后切换到项目目录中,使用pip3命令安装该工具所需的其他依赖组件,并激活虚拟环境:

pip3 install -U pip setuptools virtualenv

virtualenv env

source env/bin/activate

(env) pip3 install -U -r ./requirements.txt

最后,运行下列命令即可开始使用chaos:

(env) ./chaos.py -h

工具参数选项

-h, --help             显示工具帮助信息和退出

-f FQDN, --fqdn FQDN  FQDN文件路径,每一个FQDN单独一行

-i IP, --ip IP            HTTP请求的IP地址,逗号分隔

-a AGENT, --agent AGENT  请求的User-Agent Header值

-C, --csv              将CSV输出追加到OUTPUT_FILE.csv

-D, --dns             在请求之前对FQDN/IP值执行fwd/rev DNS查询

-j JITTER, --jitter JITTER   设置随机延迟间隔,单位为秒

-o OUTPUT, --output OUTPUT  将控制台输出追加到文件中

-p PORTS, --ports PORTS   要使用的TCP端口列表,逗号分隔,默认为"80,443"

-P, --no-prep          不使用`GET /`对每一个IP/端口执行预扫描,使用`Host: {IP:Port}` Header执行预扫描以去除无响应的主机

-r, --randomize        随机化要测试的IP/端口列表

-s SLEEP, --sleep SLEEP   在线程执行完后要休眠的时间,单位为秒

-t TIMEOUT, --timeout TIMEOUT   等待未响应主机的时间,单位为秒

-T, --test            测试模式,不发送任何请求

-v, --verbose         启用Verbose模式输出

-x, --singlethread    单线程执行,针对1-2个核心的系统,默认线程数=核心数-1

工具使用样例

本地主机测试

启用Python HTTP服务器:

% python3 -u -m http.server 8001

Serving HTTP on :: port 8001 (http://[::]:8001/) ...

启动ncat(HTTP检测为SSL),使用循环执行检测:

% while true; do ncat -lvp 8443 -c 'printf "HTTP/1.0 204 Plaintext OK\n\n<html></html>\n"'; done

Ncat: Version 7.94 ( https://nmap.org/ncat )

Ncat: Listening on [::]:8443

Ncat: Listening on 0.0.0.0:8443

以SSL启动ncat:

% while true; do ncat --ssl -lvp 8444 -c 'printf "HTTP/1.0 202 OK\n\n<html></html>\n"'; done    

Ncat: Version 7.94 ( https://nmap.org/ncat )

Ncat: Generating a temporary 2048-bit RSA key. Use --ssl-key and --ssl-cert to use a permanent one.

Ncat: SHA-1 fingerprint: 0208 1991 FA0D 65F0 608A 9DAB A793 78CB A6EC 27B8

Ncat: Listening on [::]:8444

Ncat: Listening on 0.0.0.0:8444

准备一个FQDN文件:

% cat ../test_localhost_fqdn.txt

www.example.com

localhost.example.com

localhost.local

localhost

notreally.arealdomain

准备一个IP文件/列表:

% cat ../test_localhost_ips.txt

127.0.0.1

127.0.0.0/29

not_an_ip_addr

-6.a

=4.2

::1

执行扫描:

% ./chaos.py -f ../test_localhost_fqdn.txt -i ../test_localhost_ips.txt,::1/126 -p 8001,8443,8444 -x -s0.2 -t1   

2023-06-21 12:48:33 [WARN] Ignoring invalid FQDN value: localhost.local

2023-06-21 12:48:33 [WARN] Ignoring invalid FQDN value: localhost

2023-06-21 12:48:33 [WARN] Ignoring invalid FQDN value: notreally.arealdomain

2023-06-21 12:48:33 [WARN] Error: invalid IP address or CIDR block =4.2

2023-06-21 12:48:33 [WARN] Error: invalid IP address or CIDR block -6.a

2023-06-21 12:48:33 [WARN] Error: invalid IP address or CIDR block not_an_ip_addr

2023-06-21 12:48:33 [INFO] * ---- <META> ---- *

2023-06-21 12:48:33 [INFO] * Version: 0.9.4

2023-06-21 12:48:33 [INFO] * FQDN file: ../test_localhost_fqdn.txt

2023-06-21 12:48:33 [INFO] * FQDNs loaded: ['www.example.com', 'localhost.example.com']

2023-06-21 12:48:33 [INFO] * IP input value(s): ../test_localhost_ips.txt,::1/126

2023-06-21 12:48:33 [INFO] * Addresses parsed from IP inputs: 12

2023-06-21 12:48:33 [INFO] * Port(s): 8001,8443,8444

2023-06-21 12:48:33 [INFO] * Thread(s): 1

2023-06-21 12:48:33 [INFO] * Sleep value: 0.2

2023-06-21 12:48:33 [INFO] * Timeout: 1.0

2023-06-21 12:48:33 [INFO] * User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.80 Safari/537.36 ch4*0s/0.9.4

2023-06-21 12:48:33 [INFO] * ---- </META> ---- *

2023-06-21 12:48:33 [INFO] 36 unique address/port addresses for testing

Prep Tests: 100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 36/36 [00:29<00:00,  1.20it/s]

2023-06-21 12:49:03 [INFO] 9 IP/ports verified, reducing test dataset from 72 entries

2023-06-21 12:49:03 [INFO] 18 pending tests remain after pre-testing

2023-06-21 12:49:03 [INFO] Queuing 18 threads

  ++RCVD++ (200 OK) www.example.com @ :::8001                                                                                                                                                    

  ++RCVD++ (204 Plaintext OK) www.example.com @ :::8443                                                                                                                                          

  ++RCVD++ (202 OK) www.example.com @ :::8444                                                                                                                                                    

  ++RCVD++ (200 OK) www.example.com @ ::1:8001                                                                                                                                                   

  ++RCVD++ (204 Plaintext OK) www.example.com @ ::1:8443                                                                                                                                         

  ++RCVD++ (202 OK) www.example.com @ ::1:8444                                                                                                                                                   

  ++RCVD++ (200 OK) www.example.com @ 127.0.0.1:8001                                                                                                                                             

  ++RCVD++ (204 Plaintext OK) www.example.com @ 127.0.0.1:8443                                                                                                                                   

  ++RCVD++ (202 OK) www.example.com @ 127.0.0.1:8444                                                                                                                                             

  ++RCVD++ (200 OK) localhost.example.com @ :::8001                                                                                                                                              

  ++RCVD++ (204 Plaintext OK) localhost.example.com @ :::8443                                                                                                                                    

  ++RCVD++ (202 OK) localhost.example.com @ :::8444                                                                                                                                              

  ++RCVD++ (200 OK) localhost.example.com @ ::1:8001                                                                                                                                             

  ++RCVD++ (204 Plaintext OK) localhost.example.com @ ::1:8443                                                                                                                                   

  ++RCVD++ (202 OK) localhost.example.com @ ::1:8444                                                                                                                                             

  ++RCVD++ (200 OK) localhost.example.com @ 127.0.0.1:8001                                                                                                                                       

  ++RCVD++ (204 Plaintext OK) localhost.example.com @ 127.0.0.1:8443                                                                                                                             

  ++RCVD++ (202 OK) localhost.example.com @ 127.0.0.1:8444                                                                                                                                       

Origin Scan: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 18/18 [00:06<00:00,  2.76it/s]

2023-06-21 12:49:09 [RSLT] Results from 5 FQDNs:

  ::1

    ::1:8444 => (202 / OK)

    ::1:8443 => (204 / Plaintext OK)

    ::1:8001 => (200 / OK)

 

  127.0.0.1

    127.0.0.1:8001 => (200 / OK)

    127.0.0.1:8443 => (204 / Plaintext OK)

    127.0.0.1:8444 => (202 / OK)

 

  ::

    :::8001 => (200 / OK)

    :::8443 => (204 / Plaintext OK)

    :::8444 => (202 / OK)

 

  www.example.com

    :::8001 => (200 / OK)

    :::8443 => (204 / Plaintext OK)

    :::8444 => (202 / OK)

    ::1:8001 => (200 / OK)

    ::1:8443 => (204 / Plaintext OK)

    ::1:8444 => (202 / OK)

    127.0.0.1:8001 => (200 / OK)

    127.0.0.1:8443 => (204 / Plaintext OK)

    127.0.0.1:8444 => (202 / OK)

 

  localhost.example.com

    :::8001 => (200 / OK)

    :::8443 => (204 / Plaintext OK)

    :::8444 => (202 / OK)

    ::1:8001 => (200 / OK)

    ::1:8443 => (204 / Plaintext OK)

    ::1:8444 => (202 / OK)

    127.0.0.1:8001 => (200 / OK)

    127.0.0.1:8443 => (204 / Plaintext OK)

    127.0.0.1:8444 => (202 / OK)

 

 

rst@r57 chaos %

工具运行截图

黑客&网络安全如何学习

今天只要你给我的文章点赞,我私藏的网安学习资料一样免费共享给你们,来看看有哪些东西。

 1.学习路线图 

 攻击和防守要学的东西也不少,具体要学的东西我都写在了上面的路线图,如果你能学完它们,你去就业和接私活完全没有问题。

2.视频教程

网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己录的网安视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。

内容涵盖了网络安全法学习、网络安全运营等保测评、渗透测试基础、漏洞详解、计算机基础知识等,都是网络安全入门必知必会的学习内容。

  (都打包成一块的了,不能一一展开,总共300多集)

因篇幅有限,仅展示部分资料,需要保存下方图片,微信扫码即可前往获取

3.技术文档和电子书

技术文档也是我自己整理的,包括我参加大型网安行动、CTF和挖SRC漏洞的经验和技术要点,电子书也有200多本,由于内容的敏感性,我就不一一展示了。 

 因篇幅有限,仅展示部分资料,需要保存下方图片,微信扫码即可前往获取

4.工具包、面试题和源码

“工欲善其事必先利其器”我为大家总结出了最受欢迎的几十款款黑客工具。涉及范围主要集中在 信息收集、Android黑客工具、自动化工具、网络钓鱼等,感兴趣的同学不容错过。 

 还有我视频里讲的案例源码和对应的工具包,需要的话也可以拿走。

因篇幅有限,仅展示部分资料,需要保存下方图片,微信扫码即可前往获取

 最后就是我这几年整理的网安方面的面试题,如果你是要找网安方面的工作,它们绝对能帮你大忙。

这些题目都是大家在面试深信服、奇安信、腾讯或者其它大厂面试时经常遇到的,如果大家有好的题目或者好的见解欢迎分享。

参考解析:深信服官网、奇安信官网、Freebuf、csdn等

内容特点:条理清晰,含图像化表示更加易懂。

内容概要:包括 内网、操作系统、协议、渗透测试、安服、漏洞、注入、XSS、CSRF、SSRF、文件上传、文件下载、文件包含、XXE、逻辑漏洞、工具、SQLmap、NMAP、BP、MSF…

 因篇幅有限,仅展示部分资料,需要保存下方图片,微信扫码即可前往获取 

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-06-18 15:06:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-06-18 15:06:02       100 阅读
  3. 在Django里面运行非项目文件

    2024-06-18 15:06:02       82 阅读
  4. Python语言-面向对象

    2024-06-18 15:06:02       91 阅读

热门阅读

  1. MySQL向Es数据同步策略

    2024-06-18 15:06:02       37 阅读
  2. 关于一份nginx-我是如何优化的

    2024-06-18 15:06:02       33 阅读
  3. 互联网十万个为什么之什么是对象存储?

    2024-06-18 15:06:02       31 阅读
  4. PHP中的for循环:多方面探讨与实际应用

    2024-06-18 15:06:02       35 阅读
  5. Qt 插件框架

    2024-06-18 15:06:02       27 阅读
  6. 力扣1385.两个数组间的距离值

    2024-06-18 15:06:02       34 阅读
  7. 【Python高级编程】使用OpenCV进行图像旋转详解

    2024-06-18 15:06:02       32 阅读
  8. CSS行内样式书写规范及注意事项

    2024-06-18 15:06:02       25 阅读