泷羽sec专题课笔记-- shodan已完结

学习视频来自B站UP主泷羽sec,如涉及侵权马上删除文章


  本笔记为 泷羽sec 《红队全栈课程》学习笔记,课程请可自行前往B站学习,课程/笔记主要涉及网络安全相关知识、系统以及工具的介绍等,请使用该课程、本笔记以及课程和笔记中提及工具的读者,遵守网络安全相关法律法规,切勿进行违法违规违纪的操作。


  写在最前面的话,我们为什么要学习网络安全这门技术:

  • 维护国家安全

  防范网络攻击:网络安全威胁已成为国家安全的重要挑战。学习网络安全有助于识别和防范来自国内外的网络攻击,防止敌对势力通过网络手段窃取敏感信息、破坏关键基础设施或干扰社会正常运作。
  保护关键基础设施:现代社会高度依赖网络技术,金融系统、交通网络、电力供应等关键基础设施都依赖于稳定的网络环境。掌握网络安全知识有助于保护这些基础设施免受网络攻击,确保国家的正常运转。

  • 促进经济发展

  保障数字经济安全:数字经济已成为国家经济增长的重要引擎。通过学习网络安全,可以保障数字经济的健康发展,防止数据泄露和网络犯罪对经济活动的干扰。
  增强国际竞争力:在全球化的背景下,网络安全技术水平直接影响国家的国际竞争力。掌握先进的网络安全技术和策略,有助于提升国家在全球数字经济中的地位。

  • 提升社会稳定

  防范社会风险:网络犯罪和网络恐怖主义对社会稳定构成严重威胁。学习网络安全有助于及时发现和应对这些风险,维护社会的和谐与稳定。
  保护公民权益:网络安全直接关系到公民的隐私权和信息安全。通过学习网络安全,可以更好地保护公民的合法权益,增强公众对政府和企业的信任。

  • 推动科技进步

  创新安全技术:网络安全领域的技术创新不断推动信息技术的进步。学习网络安全有助于推动新技术的研发和应用,提升国家在科技领域的整体实力。
  促进国际合作:网络安全是全球性问题,需要各国共同努力应对。通过学习网络安全,可以参与国际网络安全合作,共同制定国际标准和规范,提升全球网络安全水平。

  • 强化法治建设

  完善法律法规:学习网络安全有助于推动和完善相关法律法规的制定和实施,确保网络安全工作有法可依、有章可循。
  提升执法能力:掌握网络安全知识可以提升执法部门的网络侦查和取证能力,有效打击网络犯罪,维护法律权威。

  • 培养专业人才

  构建人才梯队:网络安全领域需要大量高素质的专业人才。通过系统学习和培训,可以培养出一批具备专业知识和实战经验的网络安全专家,为国家的网络安全事业提供坚实的人才保障。

  总之,学习网络安全不仅是个人职业发展的需要,更是维护国家安全、促进经济发展、保障社会稳定和推动科技进步的重要手段。通过不断提升网络安全意识和能力,我们可以更好地应对日益复杂的网络安全挑战,为实现国家的长期稳定和发展贡献力量。


以下为shodan1视频对应的内容   视频传送门==>   shodan(1)_哔哩哔哩_bilibili 


一、shodan基本概念

  https://shodan.io(shodan)为一个互联网搜索引擎,不同与百度、谷歌,shodan专门用于搜索网络设备,电脑/手机/摄像头/服务器/路由器等均为网络设备(只要联网,只要ip地址的,均可称之为网络设备)。

扩展思考:扫地机器人、电视机、天猫精灵等可联网设备实际也是网络设备 

shodan主页的描述:Websites are just one part of the Internet. Use Shodan to discover everything from power plants, mobile phones, refrigerators and Minecraft servers.

二、shodan工作原理

  shodan在服务器上部署了各种扫描器,如漏洞扫描器、硬件扫描器(路由器、交换器、处理器等),还有目录扫描器,这些扫描器一直在不停工作。

  由于shodan本身是闭源项目,因此如何实现暂且不讨论,但它切实是可以满足我们的许多需求,比如漏洞扫描、设备扫描等。

三、shodan优缺点

  shodan优点是十分方便,只要能接入互联网的电脑都可以通过访问其网址,进行互联网设备的搜索/检索等,可以快速得到结果(数据已预存在其服务器中,同时也是缺点);缺点导致其返回的并不是实时数据,结果可能是三个月之前的信息;此外shodan也是一款收费产品,未注册用户和免费用户搜索到的结果是十分有限,即便是收费用户其检索到的结果依旧十分有限。

  shodan本质也是通过卖产品卖服务盈利。

扩展思考:基于shodan的运作模式,其主要成本应为租用服务器和带宽用于扫描、存储扫描结果,营收理论上是通过向2B和2C客户提供数据信息而收取服务费用。

四、shodan的功能

  • 在线查询
  • 离线客户端
  • 监控功能
  • API接口调用

四、kali端shodan安装以及使用

注:经实测kali官方发行的VMware集成版kali已预装shodan,使用该版本kali的情况下,安装步骤实际可以跳过


下载vmware或者virtualbox对应的.7z版,解压缩后用虚拟机打开即可

中科大镜像源kali下载地址 Index of /kali-images/kali-2024.3/icon-default.png?t=O83Ahttps://mirrors.ustc.edu.cn/kali-images/kali-2024.3/


1、shodan的安装(kali集成版可以跳过安装步骤)

# 注意,vmware/virtualbox集成的kali解压后自带了shodan
# 此处可以不用重新安装,仅作演示
┌──(kali㉿kali)-[~/Desktop]
└─$ git clone https://github.com/achillean/shodan-python.git
Cloning into 'shodan-python'...
fatal: unable to access 'https://github.com/achillean/shodan-python.git/': GnuTLS recv error (-110): The TLS connection was non-properly terminated.

# 注,直接gitclone失败的话,可以尝试下面地址                                                                                                                                                                                      
┌──(kali㉿kali)-[~/Desktop]
└─$ git clone https://gitclone.com/github.com/achillean/shodan-python.git
Cloning into 'shodan-python'...
remote: 对象计数中: 1667, 完成.
remote: 压缩对象中: 100% (608/608), 完成.
remote: Total 1667 (delta 1094), reused 1502 (delta 991)
Receiving objects: 100% (1667/1667), 361.11 KiB | 1.33 MiB/s, done.
Resolving deltas: 100% (1094/1094), done.

┌──(kali㉿kali)-[~/Desktop]
└─$ cd shodan-python 

┌──(kali㉿kali)-[~/Desktop/shodan-python]
└─$ python3 setup.py install        
running install
(安装具体过程略)

2、验证是否安装了shodan

# 验证安装是否成功 实际在kali终端输入shodan
# 看到这条命令直接跳成蓝色字体,就知道已经是可执行命令了
┌──(kali㉿kali)-[~/Desktop/shodan]
└─$ which shodan
/usr/bin/shodan

# 查看shodan版本
┌──(kali㉿kali)-[~/Desktop/shodan-python]
└─$ shodan version
1.31.0

# 查看命令的帮助行
┌──(kali㉿kali)-[~/Desktop/shodan-python]
└─$ shodan -h                    
Usage: shodan [OPTIONS] COMMAND [ARGS]...

Options:
  -h, --help  Show this message and exit.

Commands:
  alert       Manage the network alerts for your account
  convert     Convert the given input data file into a different format.
(命令较多未全部展示)

3、shodan init命令

  学术会员账号请联系小羽师傅或其他人进群后联系泷哥获取

┌──(kali㉿kali)-[~/Desktop/shodan-python]
└─$ shodan init xxxxxxxxxxxxxxxxxxxx  #请输入自己的apikey
Successfully initialized

# 这条命令是查看自己的实际ip,没有init的情况下这条命令使用会出错                                                                                                                                                                                        
┌──(kali㉿kali)-[~/Desktop/shodan-python]
└─$ shodan myip                                 
xxx.xxx.xxx.xxx

api key登录后在该位置获取

4、shodan search 命令

注意,文中引用的相关搜索信息,以及可能存在的漏洞仅供网络安全学习使用,虽然案例信息均为小日子的,但仍请阅读本笔记含系列笔记的读者,切勿对主机、相关引用信息以及可能存在的漏洞进行实际利用。

search基本操作符

- `title:`:搜索网页标题中包含特定字符串的设备。
- `html:`:搜索HTML内容中包含特定字符串的设备。
- `product:`:搜索特定产品的设备。
- `version:`:搜索特定版本的设备。
- `geo:`:搜索特定地理位置的设备。
- `country:`:搜索特定国家的设备。
- `city:`:搜索特定城市的设备。
- `org:`:搜索特定组织的设备。
- `isp:`:搜索特定ISP的设备。
- `port:`:搜索开放特定端口的设备。
- `os:`:搜索运行特定操作系统的设备。
- `device:`:搜索特定类型的设备。
- `has_vuln:`:搜索存在特定漏洞的设备。

search 组合操作符

- `+`:AND操作符,用于组合多个条件。
- `-`:NOT操作符,用于排除特定条件。
- `*`:通配符,用于匹配任意字符。
- `..`:范围操作符,用于指定数值范围。
- `||`:OR操作符,用于组合多个条件。

更多的搜索语法指令详见shodan官网

Filter Reference (shodan.io)icon-default.png?t=O83Ahttps://www.shodan.io/search/filters


Search Query Fundamentals - Shodan Help Centericon-default.png?t=O83Ahttps://help.shodan.io/the-basics/search-query-fundamentals

# --limit 表示限定查询的ip数量 country表示查询的国别 city:表示查询的城市
┌──(kali㉿kali)-[~/Desktop/shodan]
└─$ shodan search --limit 2 country:jp 

# shodan 直接使用search命令后会创建个无法交互的窗口,另外好像貌似并不会保存搜索结果
# 可以使用重定向符保存到本地文本中,方便复用
┌──(kali㉿kali)-[~/Desktop]
└─$ shodan search --limit 5 --color --fields ip_str port:3389 country:jp city:Tokyo > result.txt

┌──(kali㉿kali)-[~/Desktop]
└─$ cat result.txt
xxx.xxx.xxx.xxx
xxx.xxx.xxx.xxx
xxx.xxx.xxx.xxx


# 查找3条信息,小日子的东京,开启3389端口,操作系统是windows,结果输出到result.txt
┌──(kali㉿kali)-[~/Desktop/shodan]
└─$ shodan search --limit 3 --fields ip_str country:jp port:3389 city:tokyo os:windows > result.txt

┌──(kali㉿kali)-[~/Desktop/shodan]
└─$ cat result.txt
xxx.xxx.xxx.xxx
xxx.xxx.xxx.xxx
xxx.xxx.xxx.xxx

shodan网页中按第一条ip搜索下,的确是windows系统,并且开启了3389端口

5、shodan host 命令

┌──(kali㉿kali)-[~/Desktop/shodan]
└─$ shodan host xxx.xxx.xxx.xxx
xxx.xxx.xxx.xxx
Hostnames:              xxxx.com;xxx.io;www.xxxx.com
City:                    Tokyo
Country:                 Japan
Operating System:        Windows Server 2022 (build 10.0.20348)
Organization:            GMO Internet Group, Inc.
Updated:                 2024-10-29T12:25:09.496203
Number of open ports:    3

Ports:
    443/tcp Microsoft HTTPAPI httpd (2.0)
        |-- HTTP title: Not Found
        |-- Cert Issuer: C=JP, CN=FujiSSL Public Validation Authority - G3, O=SECOM Trust Systems CO.,LTD.
        |-- Cert Subject: CN=www.xxxx.com
        |-- SSL Versions: -SSLv2, -SSLv3, TLSv1, TLSv1.1, TLSv1.2, TLSv1.3
        |-- Diffie-Hellman Parameters:
                Bits:          2048
                Generator:     00000
   1433/tcp MS-SQL Server 2019 RTM (15.0.2000.0)
   3389/tcp Remote Desktop Protocol
        |-- Cert Issuer: CN=160-251-93-98
        |-- Cert Subject: CN=160-251-93-98
        |-- SSL Versions: -SSLv2, -SSLv3, TLSv1, TLSv1.1, TLSv1.2
        |-- Diffie-Hellman Parameters:
                Bits:          2048
                Generator:     00000


# 使用has_vuln:Ture条件,检索有漏洞的主机
┌──(kali㉿kali)-[~/Desktop/shodan]
└─$ shodan search --limit 3 --fields ip_str country:jp port:3306 has_vuln:True > result_vule.txt

┌──(kali㉿kali)-[~/Desktop/shodan]
└─$ cat result_vule.txt
xxx.xxx.xxx.xxx
xxx.xxx.xxx.xxx
xxx.xxx.xxx.xxx


┌──(kali㉿kali)-[~/Desktop/shodan]
└─$ shodan host xxx.xxx.xxx.xxx
xxx.xxx.xxx.xxx
Hostnames:               xxx.jp
City:                    Osaka
Country:                 Japan
Organization:            SAKURA Internet Inc.
Updated:                 2024-10-29T12:47:12.215684
Number of open ports:    5
Vulnerabilities:         CVE-2017-12419 CVE-2009-2942  # 此处提示有2个漏洞

Ports:
     80/tcp
    123/udp
   3306/tcp MySQL (5.1.52)
   5432/tcp PostgreSQL (8.1.5 - 8.1.9)
   8080/tcp Apache Tomcat/Coyote JSP engine (1.1)

 以下为shodan2视频对应的内容   视频传送门==>  shodan(2)_哔哩哔哩_bilibili


6、利用指纹批量查找小日子带有CVE-2019-0708漏洞的主机

┌──(kali㉿kali)-[~/Desktop/shodan]
└─$ shodan search --limit 10 --fields ip_str,port '"\x03\x00\x00\x0b\x06\xd0\x00\x00\x124\x00"' country:jp
> result_cve2019-0708.txt

┌──(kali㉿kali)-[~/Desktop/shodan]
└─$ cat result_cve2019-0708.txt
(敏感信息不再展示)


# 关于漏洞指纹的说明:shodan实际可以用 vuln:漏洞编号来搜索
# 但是目前测试账号无权限,所以使用漏洞指纹替代
┌──(kali㉿kali)-[~/Desktop]
└─$ shodan search vuln:cve-2019-0708
Error: The "vuln" filter is only available to academic users, Small Business API subscribers and higher.

验证下在shodan网页版搜索该host,也暴露了漏洞相关指纹

关于该漏洞的利用引用其他师傅的文章

CVE-2019-0708漏洞分析-优快云博客icon-default.png?t=O83Ahttps://blog.youkuaiyun.com/qq_44465615/article/details/109690573windows使用mstsc命令输入ip,尝试远程登录主机

7、使用download打包下载 使用parse解析

┌──(kali㉿kali)-[~/Desktop]
└─$ shodan download 0708 --limit 50 '"\x03\x00\x00\x0b\x06\xd0\x00\x00\x124\x00"'
Search query:                   "\x03\x00\x00\x0b\x06\xd0\x00\x00\x124\x00"
Total number of results:        15137
Query credits left:             69
Output file:                    0708.json.gz
  [###################################-]   98%  00:00:10
Saved 50 results into file 0708.json.gz

# 上条命令中下载的.gz可以不用解压缩,直接用parse命令进行解析
┌──(kali㉿kali)-[~/Desktop]
└─$ shodan parse --fields ip_str,port,product,os 0708.json.gz
xxx.xxx.xxx.xxx  3389    Remote Desktop Protocol Windows Server 2008 R2 Enterprise
xxx.xxx.xxx.xxx  3389    Remote Desktop Protocol
xxx.xxx.xxx.xxx  3389    Remote Desktop Protocol

# 亦可使用重定向符输出至文件
┌──(kali㉿kali)-[~/Desktop]
└─$ shodan parse --fields ip_str,port,product,os 0708.json.gz > output.txt

┌──(kali㉿kali)-[~/Desktop]
└─$ cat output.txt
xxx.xxx.xxx.xxx  3389    Remote Desktop Protocol Windows Server 2008 R2 Enterprise
xxx.xxx.xxx.xxx  3389    Remote Desktop Protocol
xxx.xxx.xxx.xxx  3389    Remote Desktop Protocol

注意:数据实际是个json或者dict,有多个key

['product', 'hash', 'os', 'screenshot', 'tags', 'timestamp', 'isp', 'transport', '_shodan', 'rdp_encryption', 'asn', 'cloud', 'hostnames', 'location', 'ip', 'domains', 'org', 'data', 'port', 'opts', 'ip_str'],部分字段还嵌套了key:value,比如screenshot字段下面有['data', 'labels', 'mime', 'hash', 'text'],data数据是图片的base64,是登陆页面的截图,可自行用代码转换

 

其他参考资料

Shodan API使用指南 - SecPulse.COM | 安全脉搏icon-default.png?t=O83Ahttps://www.secpulse.com/archives/73105.html


以下为shodan3视频对应的内容   视频传送门==>   shodan(3)_哔哩哔哩_bilibili


8、shodan的count/honeyscore等命令

shodan count 命令
# 统计某种特征的设备数量

# 统计CVE-2019-0708 漏洞数量
┌──(kali㉿kali)-[~/Desktop]
└─$ shodan count '"\x03\x00\x00\x0b\x06\xd0\x00\x00\x124\x00"'
15137

# 统计小日子的设备数量
┌──(kali㉿kali)-[~/Desktop]
└─$ shodan count country:jp
16270776

# 统计小日子apache的数量
┌──(kali㉿kali)-[~/Desktop]
└─$ shodan count country:jp "apache"
1673489


shodan honeyscore
# 这条命令貌似无法使用

┌──(kali㉿kali)-[~/Desktop]
└─$ shodan honeyscore xxx.xxx.xxx.xxx
Error: Unable to calculate honeyscore

┌──(kali㉿kali)-[~/Desktop]
└─$ shodan honeyscore xxx.xxx.xxx.xxx
Error: Unable to calculate honeyscore

网页版shodan貌似也无法提供有用的信息

--history参数
# 看下小日子的yahoo的历史记录
┌──(kali㉿kali)-[~/Desktop]
└─$ ping -c 1 www.yahoo.co.jp
PING www.yahoo.co.jp (182.22.25.124) 56(84) bytes of data.
64 bytes from 182.22.25.124: icmp_seq=1 ttl=128 time=113 ms

--- www.yahoo.co.jp ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 113.294/113.294/113.294/0.000 ms

┌──(kali㉿kali)-[~/Desktop]
└─$ shodan host 182.22.25.124 --history > yahoo.jp

# 数据较多,仅仅展示了最后20行
┌──(kali㉿kali)-[~/Desktop]
└─$ tail -20 yahoo.jp
    443/tcp             (2021-08-29)
    443/tcp             (2021-08-28)
    443/tcp             (2021-08-26)
    443/tcp             (2021-08-19)
    443/tcp             (2021-08-17)
    443/tcp             (2021-08-08)
    443/tcp             (2021-08-08)
    443/tcp             (2021-08-07)
    443/tcp             (2021-08-03)
    443/tcp             (2021-08-02)
    443/tcp             (2021-08-02)
    443/tcp             (2021-08-02)
    443/tcp             (2021-08-02)
    443/tcp             (2021-08-02)
    443/tcp             (2021-08-02)
    443/tcp             (2021-08-02)
    443/tcp             (2021-07-30)
    443/tcp             (2021-07-26)
    443/tcp             (2021-07-25)
    443/tcp             (2021-07-24)

9、利用shodan search 查找未授权登陆的VNC

┌──(kali㉿kali)-[~/Desktop]
└─$ shodan search --limit 3 --fields ip_str "authentication disabled" port:5900 country:jp > vnc.txt

┌──(kali㉿kali)-[~/Desktop]
└─$ cat vnc.txt
XXX.XXX.XXX.XXX
XXX.XXX.XXX.XXX
XXX.XXX.XXX.XXX

比较敏感,具体利用过程略


以下为shodan4视频对应的内容   视频传送门==>   shodan(4)_哔哩哔哩_bilibili


10、其他shodan的利用方式

查找挂黑页的网站
# 返回自己在公网的IP地址
┌──(kali㉿kali)-[~/Desktop]
└─$ shodan myip
xxx.xxx.xxx.xxx # 注意日常不要暴露自己的IP

# 查询http.title信息中标记为hacked by的网站信息
┌──(kali㉿kali)-[~/Desktop]
└─$ shodan search --limit 10 --fields ip_str,port http.title:hacked by > hackedby.txt

┌──(kali㉿kali)-[~/Desktop]
└─$ cat hackedby.txt
xxx.xxx.xxx.xxx   443
xxx.xxx.xxx.xxx   443
xxx.xxx.xxx.xxx   443
xxx.xxx.xxx.xxx   8080
xxx.xxx.xxx.xxx   443

注意:该种行叫挂黑页,类似"xxx到此一游",行为为比较幼稚

该条命令正面利用价值:如有需要的情况下,可以在国内或者指定范围内查询被黑的网站,协助补天等帮国内企业或者用户的资产进行修补

┌──(kali㉿kali)-[~/Desktop]
└─$ shodan search --limit 10 --fields ip_str,port http.title:hacked by country:cn > cnhackedby.txt

┌──(kali㉿kali)-[~/Desktop]
└─$ cat cnhackedby.txt
xxx.xxx.xxx.xxx   8080
xxx.xxx.xxx.xxx   8080
xxx.xxx.xxx.xxx   80
定向查找mysql后台等
┌──(kali㉿kali)-[~/Desktop]
└─$ shodan search --limit 10 --fields ip_str,port http.title:mysql country:jp > mysql.txt

┌──(kali㉿kali)-[~/Desktop]
└─$ cat mysql.txt
xxx.xxx.xxx.xxx  443
xxx.xxx.xxx.xxx  443
xxx.xxx.xxx.xxx  443

 搜索内容可以中文或者其他语言,以及其他关键字

# 定向查找小日子title为login页面
┌──(kali㉿kali)-[~/Desktop]
└─$ shodan search --limit 10 --fields ip_str,port http.title:login country:jp > jplogin.txt

┌──(kali㉿kali)-[~/Desktop]
└─$ cat jplogin.txt
xxx.xxx.xxx.xxx   9010
xxx.xxx.xxx.xxx   2087
xxx.xxx.xxx.xxx   2087

 利用shodan定向搜索cisco设备
# 搜索10条小日子的cisco设备 
┌──(kali㉿kali)-[~/Desktop]
└─$ shodan search --limit 10 --fields ip_str,port "cisco -authorized port:23" country:jp > cisco.txt

┌──(kali㉿kali)-[~/Desktop]
└─$ cat cisco.txt
xxx.xxx.xxx.xxx  23
xxx.xxx.xxx.xxx  23
xxx.xxx.xxx.xxx  23

┌──(kali㉿kali)-[~/Desktop]
└─$ telnet xxx.xxx.xxx.xxx 23
Trying xxx.xxx.xxx.xxx...
Connected to xxx.xxx.xxx.xxx.
Escape character is '^]'.

-----------------------------------------------------------------------
Cisco Configuration Professional (Cisco CP) is installed on this device.
This feature requires the one-time use of the username "cisco" with the
password "cisco". These default credentials have a privilege level of 15.

YOU MUST USE CISCO CP or the CISCO IOS CLI TO CHANGE THESE
PUBLICLY-KNOWN CREDENTIALS

Here are the Cisco IOS commands.

username <myuser>  privilege 15 secret 0 <mypassword>
no username cisco

Replace <myuser> and <mypassword> with the username and password you want
to use.

IF YOU DO NOT CHANGE THE PUBLICLY-KNOWN CREDENTIALS, YOU WILL
NOT BE ABLE TO LOG INTO THE DEVICE AGAIN AFTER YOU HAVE LOGGED OFF.

For more information about Cisco CP please follow the instructions in the
QUICK START GUIDE for your router or go to http://www.cisco.com/go/ciscocp
-----------------------------------------------------------------------


User Access Verification

Username: admin  # 此处进行弱口令尝试
Password:

% Authentication failed

Username: Connection closed by foreign host.  # 点到即止退出


以下为shodan3视频对应的内容   视频传送门==>shodan(5)_哔哩哔哩_bilibili


 查询C段网站(nsa.gov为例)
┌──(kali㉿kali)-[~/Desktop]
└─$ shodan search --limit 10 --fields ip_str,port net:xxx.xxx.xxx.0/24 > nsa.txt

┌──(kali㉿kali)-[~/Desktop]
└─$ cat nsa.txt
xxx.xxx.xxx.xxx    80
xxx.xxx.xxx.xxx    443
xxx.xxx.xxx.xxx    443


┌──(kali㉿kali)-[~/Desktop]
└─$ shodan host xxx.xxx.xxx.xxx
xxx.xxx.xxx.xxx
Hostnames:               xxxx.com
City:                    Dallas
Country:                 United States
Organization:            NSA, LLC.
Updated:                 2024-10-29T23:10:01.628973
Number of open ports:    2

Ports:
     80/tcp BigIP
    443/tcp Apache httpd
        |-- HTTP title: 301 Moved Permanently
        |-- Cert Issuer: C=GB, L=Salford, CN=Sectigo RSA Domain Validation Secure Server CA, O=Sectigo Limited, ST=Greater Manchester
        |-- Cert Subject: CN=*.juiceplus.com
        |-- SSL Versions: -SSLv2, -SSLv3, -TLSv1, -TLSv1.1, -TLSv1.3, TLSv1.2
查询小日子有safedog的网站
┌──(kali㉿kali)-[~/Desktop]
└─$ shodan search --limit 10 --fields ip_str,port country:jp http.waf:safedog > jpsafedog.txt

┌──(kali㉿kali)-[~/Desktop]
└─$ cat jpsafedog.txt
xxx.xxx.xxx.xxx   9106
xxx.xxx.xxx.xxx  7474
xxx.xxx.xxx.xxx 32400


┌──(kali㉿kali)-[~/Desktop]
└─$ shodan host xxx.xxx.xxx.xxx
xxx.xxx.xxx.xxx
City:                    Tokyo
Country:                 Japan
Organization:            Shiodome Sumitomo Blog 1-9-2 TOKYO
Updated:                 2024-10-30T07:29:29.439903
Number of open ports:    569
(信息过长略)
查询小日子html内带有login的网站 

┌──(kali㉿kali)-[~/Desktop]
└─$ shodan search --limit 10 --fields ip_str,port country:jp http.html:login > jplogin.txt

┌──(kali㉿kali)-[~/Desktop]
└─$ cat jplogin.txt
xxx.xxx.xxx.xxx   80
xxx.xxx.xxx.xxx   49153


┌──(kali㉿kali)-[~/Desktop]
└─$ shodan host xxx.xxx.xxx.xxx
18.177.19.211
Hostnames:               xxx.xxx.xxx.xxx
City:                    Tokyo
Country:                 Japan
Organization:            Amazon Data Services Japan
Updated:                 2024-10-30T12:14:54.369974
Number of open ports:    2

Ports:
     80/tcp nginx
        |-- HTTP title:
AudioCodes
    443/tcp nginx
        |-- HTTP title:
AudioCodes
        |-- Cert Issuer: C=US, CN=DigiCert Global G2 TLS RSA SHA256 2020 CA1, O=DigiCert Inc
        |-- Cert Subject: C=US, ST=Florida, CN=*.kore.ai, O=KORE.AI, Inc, L=Orlando
        |-- SSL Versions: -SSLv2, -SSLv3, -TLSv1, -TLSv1.1, TLSv1.2, TLSv1.3
        |-- Diffie-Hellman Parameters:
                Bits:          1024
                Generator:     2

某防火墙搜索案例
# 利用http.html:xxxx搜索某防火墙
# 该防火墙有xxx漏洞
┌──(kali㉿kali)-[~/Desktop]
└─$ shodan search --limit 10 --fields ip_str,port http.html:xxxxx > xxxxx.txt

┌──(kali㉿kali)-[~/Desktop]
└─$ cat xxxxx.txt
xxx.xxx.xxx.xxx    8080
xxx.xxx.xxx.xxx    8080

(未做利用尝试,后续略)
搜索小日子MongoDB案例
┌──(kali㉿kali)-[~/Desktop]
└─$ shodan search --limit 10 --fields ip_str,port  "Mongodb server information -authentication" port:27017 country:jp > jpmongodb.txt

┌──(kali㉿kali)-[~/Desktop]
└─$ cat jpmongodb.txt
xxx.xxx.xxx.xxx   27017
xxx.xxx.xxx.xxx   27017
(未做利用尝试,后续略)
Jenkins搜索案例
# 注意经群里讨论,or需要用大写
┌──(kali㉿kali)-[~/Desktop/tmp]
└─$ shodan search --limit 10 --fields ip_str,port "X-Jenkins" OR "Set-Cookie:JSESSIONID" http.title:"Dashboard" > jenkins.txt

┌──(kali㉿kali)-[~/Desktop/tmp]
└─$ cat jenkins.txt
xxx.xxx.xxx.xxx    443
xxx.xxx.xxx.xxx    9944
xxx.xxx.xxx.xxx    8080

(未尝试利用,后续略)
Jenkins可利用的攻击面较广,产品本身相关介绍详见其主页

Jenkinsicon-default.png?t=O83Ahttps://www.jenkins.io/


以下为shodan5视频对应的内容   视频传送门==>  shodan(6)_哔哩哔哩_bilibili


五、shodan网页端功能

1.组合搜索CVE-2019-0708漏洞指纹和小日子国家主机信息 

  注意此处组合条件之间用+号连接,用AND会失败

2.网页端的org/products/os可以作为命令行搜索的参考

 3.利用页端信息扩充命令行搜索功能

# 以小日子的apache httpd服务器为例

┌──(kali㉿kali)-[~/Desktop/tmp]
└─$ shodan search --limit 10 --fields ip_str,port product:Apache httpd country:jp > jpapachehttpd.txt


┌──(kali㉿kali)-[~/Desktop/tmp]
└─$ head -1 jpapachehttpd.txt
xxx.xxx.xxx.xxx    443


┌──(kali㉿kali)-[~/Desktop/tmp]
└─$ curl -i xxx.xxx.xxx.xxx:443  | head -5
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  1723  100  1723    0     0  10935      0 --:--:-- --:--:-- --:--:-- 10974
HTTP/1.1 200 OK
Date: Wed, 30 Oct 2024 14:10:24 GMT
Server: Apache # <== 返回服务器信息
Content-Length: 1723
Connection: close

使用curl -i 参数 / Wappalyzer 浏览器插件/ 开发者模式查看报文,均可验证服务器类型

 

 4.按org进行检索

# org搜索有点迷

┌──(kali㉿kali)-[~/Desktop/tmp]
└─$ shodan count org:"Constant Company"
17

5.网页端资产管理功能 

入口地址分别对应IP/域名/搜索查询(新增的IP)

添加IP监控为例

添加邮件监控(可增加自己的邮箱)

仪表盘

六、shodan拾遗 

┌──(kali㉿kali)-[~/Desktop/tmp]
└─$ shodan -h
Usage: shodan [OPTIONS] COMMAND [ARGS]...

Options:
  -h, --help  Show this message and exit.

Commands:
  alert       Manage the network alerts for your account
  convert     Convert the given input data file into a different format.
  count       Returns the number of results for a search
  data        Bulk data access to Shodan
  domain      View all available information for a domain
  download    Download search results and save them in a compressed JSON...
  honeyscore  Check whether the IP is a honeypot or not.
  host        View all available information for an IP address
  info        Shows general information about your account
  init        Initialize the Shodan command-line
  myip        Print your external IP address
  org         Manage your organization's access to Shodan
  parse       Extract information out of compressed JSON files.
  radar       Real-Time Map of some results as Shodan finds them.
  scan        Scan an IP/ netblock using Shodan.
  search      Search the Shodan database
  stats       Provide summary information about a search query
  stream      Stream data in real-time.
  trends      Search Shodan historical database
  version     Print version of this tool.

alert添加监控(建议网页操作,略)

info查看用量(细节略)

domain查看域信息

用法:shodan domain [OPTIONS] <domain>

查看一个域的所有可用信息

选项:
 -D,——details查找域结果中任何ip的主机信息
 -S,——save将信息保存到以域命名的文件中
 (如果文件存在则追加)。
 -H,——history在结果中包含历史DNS数据
 -T,——type TEXT只返回指定类型的DNS记录
 -h,——help显示此消息并退出。

scan实时查询信息

用法:shodan scan [OPTIONS] COMMAND [ARGS]…

使用Shodan扫描IP/ netblock。

选项:
-h,——help显示此消息并退出。

命令:
 扫描internet上的特定端口和协议,使用…
 list显示最近启动的扫描
 protocols列出使用Shodan可以扫描的协议。
 status查看按需扫描的状态。
 使用Shodan扫描IP/ netblock。

stats统计命令(用得不多)

┌──(kali㉿kali)-[~/Desktop/tmp]
└─$ shodan stats --facets ssl.version country:jp has_ssl:true http
Top 6 Results for Facet: ssl.version
tlsv1.2                        2,238,583
tlsv1.1                        1,039,244
tlsv1                            977,186
tlsv1.3                          817,656
sslv3                            110,468
sslv2                              6,959

命令输出解读

  用于获取 Shodan 数据库中的统计信息。

  这个命令的目的是获取关于 SSL/TLS 版本、地理位置(特定于日本)、是否启用 SSL 以及 HTTP 服务的统计信息。下面是对命令中各个部分的解释:

  • `shodan stats`: 调用 Shodan 的统计功能。
  •  `--facets ssl.version`: 指定一个或多个统计维度(facets),在这个例子中是 SSL/TLS 版本。
  • `country:jp`: 过滤条件,只统计位于日本的设备。
  • `has_ssl:true`: 另一个过滤条件,只统计启用了 SSL 的设备。
  • `http`: 另一个过滤条件,只统计提供 HTTP 服务的设备。

  命令的输出显示了在日本启用了 SSL 并提供 HTTP 服务的设备中,不同 SSL/TLS 版本的分布情况。输出中的 "Top 6 Results for Facet: ssl.version" 表示这是关于 SSL/TLS 版本维度的统计结果,下面列出了六个最常见的版本及其对应的设备数量。

  这里是输出的详细解释:

  • `tlsv1.2`: 2,238,583 台设备使用 TLS 1.2 版本。
  • `tlsv1.1`: 1,039,244 台设备使用 TLS 1.1 版本。
  • `tlsv1`: 977,186 台设备使用 TLS 1.0 版本。
  • `tlsv1.3`: 817,656 台设备使用 TLS 1.3 版本。
  • `sslv3`: 110,468 台设备使用 SSL 3.0 版本。
  • `sslv2`: 6,959 台设备使用 SSL 2.0 版本。

结合端口完善shodan扫描

# 查询Constant Company公司开启80端口的服务
┌──(kali㉿kali)-[~/Desktop/tmp]
└─$ shodan search --limit 10 org:"*Constant Company*" port:80 > port.txt

┌──(kali㉿kali)-[~/Desktop/tmp]
└─$ cat port.txt
xxx.xxx.xxx.xxx  80      xxx.xxx.xxx.xxx.xxxx.com     HTTP/1.1 325 unknown status
(其余信息略)

以下为shodan7视频对应的内容   视频传送门==> shodan(7)完结_哔哩哔哩_bilibili


 常用端口以及对应的服务

  请自行移步查看,本笔记略

什么是端口?史上最全最强端口号大全,收藏!-腾讯云开发者社区-腾讯云 (tencent.com)icon-default.png?t=O83Ahttps://cloud.tencent.com/developer/article/1897800

shodan扫描中的截图

  使用has_screenshot:True进行搜索,泄露用户名信息

google搜索语法(不再单独开课) 

搜索语法用途及可能利用
inurl:admin查找包含admin的网页url,可能找到管理后台入口
inurl:login查找包含login的网页
inurl:php?id=查找可能存在sql注入漏洞的php页面
inurl:asp?id=查找可能存在sql注入漏洞的asp页面
inurl:jsp?id=查找可能存在sql注入漏洞的jsp页面
filetype:pdf查找特点扩展名pdf文件
filetype:doc查找特点扩展名word文件
filetype:xls查找特点扩展名excel文件
intitle:后台管理查找标题中包含后台管理的页面
intitle:登陆页面查找标题中包含登陆页面的页面
site:gov inurl:upload在gov网站中查找可能存在文件上传漏洞的页面
site:edu inurl:forum在教育机构网站中查找论坛页面
site:.com inurl:phpmyadmin在商业网站中查找可能存在的phpmyadmin管理页面
site:.org inurl:password在非盈利组织网站中查找包含password的页面,可能找到泄密信息
site:.net inurl:backup在.net域名网站中查找备份文件
site:.gov intitle:敏感信息在政府中文域名中查找标题包含敏感信息的页面
site:company.com inurl:confidential在特定公司网站中查找包含confidential(机密)的页面
site:domain.com inurl:uploads在特定域名中查找上传文件的目录
site:edu.cn filetype:ppt 关键字在教育机构中文域名网站中查找特定关键字的ppt文件
site:*.gov inurl:virnerability在各种政府网站中查找包含virnerability(漏洞)的页面

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值