声明:
学习视频来自B站UP主 泷羽sec,如涉及侵权马上删除文章。本文只涉及学习内容,其他的都与本人无关,切莫逾越法律红线,否则后果自负
微信公众号:泷羽sec
shodan
专门搜索网络设备的搜索引擎,只要有IP地址的设备,都可以看作是网络设备。包括手机、摄像头、服务器、路由器等等。
工作原理
在服务器上部署了各种扫描器,二十四小时不停扫描,批量的对IP进行扫描,针对不同地区的IP段进行扫描。
优缺点
优点:方便,很快可以得到最新的扫描结果,获取到最新的漏洞信息。
缺点:不够实时,记录的IP地址扫描信息,可能使三个月以前的。比较浪费资源。
功能
在线查询功能;离线的客户端;可以监控一些IP地址,扫描存在的漏洞\bug等,还可以调用api接口,主要用于信息收集。
kali安装shodan
# 克隆项目
git clone https://github.com/achillean/shodan-python.git
# 切换目录
cd shodan-python
# 运行安装脚本
python setup.py install
# 初始化shodan
shodan init api_key
# 查看帮助文档
shodan -h
Windows安装shodan
1.安装python,官网在这
2.打开命令行工具,键入以下命令
# 下载shodan模块
pip install shodan
# 初始化shodan
shodan init api_key
参数
国家代码
SEARCH
shodan search --limit 10 country:jp
参数说明:
--limit>> 显示信息数量;country>> 指定搜索国家
shodan search --limit 10 country:jp --fields ip_str,port
参数说明:
--fields>> 指定过滤内容;ip_str>> IPV4的IP信息;port>> 端口
shodan search --limit 10 --fields ip_str port 80 country:jp
参数说明:
port 80>> 指定搜索80端口的IP地址
shodan search --color --limit 10 --fields ip_str port 3389 countrt:cn city:shenzhen
参数说明:
--color>> 重点内容标红;country:cn city:shenzhen>> 制定国家为中国,城市为深圳
HOST
shodan host ip
参数说明:host>>查询ip信息
返回的信息包括所在国家、组织、最后更新时间、开放端口数、可能存在的漏洞CVE、端口运行情况等。
MYIP
shodan myip>> 获取自身外部可见的ip地址
其他用法
os:"Windows 7">>指定操作系统为Windows 7
has_vuln:True>>漏洞
device:webcarm>>设备:摄像头
device:router>>设备:路由器
tp-link>>web端的设备
hostname>>指定的主机或域名>>hostname:"google"
org>>指定的组织或公司 >>org:"google"
isp>>指定的ISP供应商 >>isp:"China Telecom"
网络业务提供商(Internet Service Provider,简称ISP),互联网服务提供商,即向广大用户综合提供互联网接入业务、信息业务、和增值业务的电信运营商。
product>>指定的操作系统/软件/平台>> product:"Apache httpd"
geo>>指定的地理位置,参数为经纬度>> geo:"42.6511,-73.7549"
before/after>>指定收录时间前后的数据,格式是dd-mm-yy >>before:"11-11-15"
net>>指定的IP地址或子网>> net:"172.67.216.0/24"
version 指定的软件版本>>version:"1.6.2"
批量查找并验证漏洞CVE-2019-0708
原理
存在漏洞的远程桌面服务器,在接收到特殊数据包时会释放一个内部信道MS-T120的控制结构体,但并未将指向该结构体的指针删除。
内部信道:
定义:内部信道通常指的是在一个设备、系统或网络内部用于信息传输的通道。
分类:
- 逻辑信道:在设备或系统内部,用于承载不同类型信息的逻辑通道。
- 物理信道:实际存在的物理连接,如导线、光纤等,用于在设备内部或不同设备间传输信息。
MS-T120:是Remote Desktop Protocol(RDP)中的一个内部信道名称,它用于控制RDP连接中的虚拟信道
而且在远程桌面连接结束之后还会调用MS-T120结构体内的一个函数指针。
若攻击者可通过远程发送数据重新占据被释放的MS-T120,并为结构体内的函数指针赋恰当的值,即可实现远程命令执行。
影响版本
Windows 7
Windows Server 2008
Windows Server 2008 R2
Windows Server 2003
Windows XP
漏洞指纹
\x03\x00\x00\x0b\x06\xd0\x00\x00\x124\x00 >> 十六进制漏洞特征
"\x03": 此字节表示有效负载的类型。在这种情况下,它指示有效负载是* “Client Core Data” 消息*。>>Client Core Data:可以解释为客户端的核心数据“\x00”:此字节表示与有效负载关联的标志。在这种情况下,它表示没有设置其他标志。“\x00\x0b”:这两个字节表示有效负载的长度。在这种情况下,它表示有效负载的长度为 11 字节。“\x06\xd0”:这两个字节表示与负载关联的通道 ID。在这种情况下,它表示有效负载适用于“rdpdr”通道,该通道用于RDP 中的驱动器重定向。>>rdpdr:通过RDPDR通道,用户可以在远程会话中访问和操作本地设备,实现设备资源的共享和利用。“\x00\x00”:这两个字节表示数据包序列号。在这种情况下,它表示数据包序列号为 0。“\x124\x00”:这三个字节表示负载数据。在这种情况下,它是可以触发 RDP 协议中漏洞的字节序列
搜集漏洞
# 方式一
shodan search --limit 10 --fields ip_str,port '"/x03/x00/x00/x0b/x06/xd0/x00/x00/x124/x00"'(这里对斜线方向做了修改,是为了适应Windows命令行的搜索)
# 方式二
shodan search --limit 10 --fields ip_str,port "port:3389 Remote Desktop Protocol"
#方式三
shodan search --limit 10 --fields ip_str vuln:"CVE-2019-0708"
漏洞验证
一、将搜集到的漏洞ip编写成文件;
二、启动kali中的Metasploit,命令是msfconsole
三、在msf中搜索相关模块,命令是search cve-2019-0708
四、使用必要的模块,命令是use 序列号或者use 模块名
五、查询并配置必要的信息,查询命令是options,配置攻击IP命令是set rhost filepath,即将第一步编写的ip文件拖入到命令行中
六、检查验证漏洞,命令是check
批量下载并解压
下载
shodan download 0708 -limit 10 '"\x03\x00\x00\x0b\x06\xd0\x00\x00\x124\x00"'
该命令表示将符合条件的搜索结果下载到名为0708的文件中,限制结果数量为10条。该命令下载后的文件格式为压缩文件,需要进行解压。
解压
shodan parse --fields ip_str 0708
该命令表示从 Shodan 的搜索结果中提取 IP 地址,0708就是之前下载好的文件,从中提取的ip地址,就是存在CVE-2019-0708漏洞的ip地址。
VNC
VNC(Virtual Network Computing)是虚拟网络计算的缩写,它是一种远程桌面共享与控制技术,允许用户通过网络远程访问和控制另一台计算机的桌面界面。
安全性
- VNC本身提供了基本的安全保障,如访问密码设置等。
- 在实际使用过程中,用户仍需采取额外措施以确保数据传输的安全性,如使用加密通信协议等。
技术特点
- 跨平台性:VNC支持多种操作系统,包括
Windows、macOS和Linux,使得不同平台之间的远程访问变得简单。- 简单易用:用户只需在两台计算机上安装VNC软件即可进行远程控制。
- 高效性:VNC技术基于图像传输,即使在网络速度较慢的情况下也能提供流畅的远程控制体验。
SHODAN搜索空密码VNC
shodan search --limit 10 --fields ip_str country:jp "authentication disabled" port:5900
“Authentication disabled”>>这一术语通常表示某种形式的身份验证功能已被禁用。
port:5900>>是这一漏洞的必要条件,如果5900端口不开启,那么空密码vnc大概率不存在
扫描出的ip不一定每个都可以用,这主要是因为shodan的信息具有一定的滞后性.
MSF爆破VNC弱口令("现在收获,以后解密")
一、打开kali,通过命令msfconsole进入Metasploit
二、寻找相应模块,命令是search vnc_login
三、这个模块只有一个,所以直接use 0
四、通过options命令查看相关配置
五、需要手动配置的只有一个rhost,按需配置即可
六、配置完成之后,通过命令run或exploit开始攻击
为什么说是现在收获,以后解密,我觉得可以等学了痕迹清理之后,再大闹天宫比较合适
特定IP历史解析记录查询
shodan host ip --history>>可以查询到端口的历史开放情况
shodan搜索Cisco弱口令
搜集
shodan search country:jp --limit 10 --fields ip_str,port "cisco -authorired port:23"
cisco -authorired>>cisco:指定搜索思科设备;-authorired:排除某些特定的授权或认证相关的结果,也就是搜索弱口令的设备
得到结果可以下载并解压,获得ipv4地址,进行下一步爆破.
(http.title的内容不仅仅局限于英文,也可以是中文或其他语言,内容也是多种多样,只要敢想,就没有搜不到的)
爆破
爆破用到的工具是hydra,kali内部已经集成了.可以直接调用
hydra [-l 用户名|–L 用户名文件路径] [-p 密码|–P 密码文件路径] [-t 线程数] [–vV 显示详细信息] [–o 输出文件路径] [–f 找到密码就停止] [–e ns 空密码和指定密码试探] [ip|-M ip列表文件路径] [指定爆破的服务]
HYDRA支持协议
Asterisk, AFP, Cisco AAA, Cisco auth, Cisco enable, CVS, Firebird, FTP, HTTP-FORM-GET, HTTP-FORM-POST, HTTP-GET, HTTP-HEAD, HTTP-POST, HTTP-PROXY, HTTPS-FORM-GET, HTTPS-FORM-POST, HTTPS-GET, HTTPS-HEAD, HTTPS-POST, HTTP-Proxy, ICQ, IMAP, IRC, LDAP, MEMCACHED, MONGODB, MS-SQL, MYSQL, NCP, NNTP, Oracle Listener, Oracle SID, Oracle, PC-Anywhere, PCNFS, POP3, POSTGRES, Radmin, RDP, Rexec, Rlogin, Rsh, RTSP, SAP/R3, SIP, SMB, SMTP, SMTP Enum, SNMP v1+v2+v3, SOCKS5, SSH (v1 and v2), SSHKEY, Subversion, Teamspeak (TS2), Telnet, VMware-Auth, VNC and XMPP。
验证
可以通过FinalShell等ssh工具进行测试,思科设备的工作端口为23端口,连接时需注意指定正确的端口号.
关于HTML的一些常见标签
-
<!DOCTYPE html>- 声明文档类型,告诉浏览器这是一个HTML5文档。
<!DOCTYPE html> <html lang="zh-CN"> -
<html>- 根元素,所有其他HTML元素都包含在其中。
<html lang="zh-CN"> -
<head>- 包含文档的元数据,如标题、字符集声明、样式表链接等。
<head> <meta charset="UTF-8"> <title>示例页面</title> <link rel="stylesheet" href="styles.css"> </head> -
<meta>- 提供关于HTML文档的元数据,如字符集、页面描述、关键词等。
<meta charset="UTF-8"> <meta name="description" content="这是一个示例页面"> -
<title>- 定义文档的标题,显示在浏览器的标签栏或标题栏中。
<title>我叫标题</title> -
<body>- 包含文档的主要内容,如文本、图像、链接、表格等。
<body> <h1>我是一极标题</h1> <p>我是段落</p> </body> -
<h1>到<h6>- 标题标签,
<h1>表示最高级别的标题,<h6>表示最低级别的标题。
<h1>我是一级标题</h1> <h2>我是二级标题</h2> - 标题标签,
-
<p>- 段落标签,用于定义文本段落。
<p>我是一个段落。</p> -
<a>- 超链接标签,用于创建到其他网页或页面内元素的链接。
<a href="https://www.example.com">访问示例网站</a> -
<img>- 图像标签,用于在网页中嵌入图像。
<img src="image.jpg" alt="示例图像"> -
<ul>和<ol>- 无序列表(
<ul>)和有序列表(<ol>)标签,用于创建列表。
<ul> <li>列表项1</li> <li>列表项2</li> </ul> <ol> <li>第一项</li> <li>第二项</li> </ol> - 无序列表(
-
<li>- 列表项标签,用于定义列表中的项目。
<li>列表项</li> -
<div>- 块级容器标签,用于组合其他HTML元素,常用于布局和样式化。
<div> <h2>我是一个区块</h2> <p>我是一个段落。</p> </div> -
<span>- 行内容器标签,用于组合其他HTML元素,常用于样式化。
<p>这是一个<span style="color: red;">红色</span>的段落。</p>- 表格标签,用于创建表格。
<tr> <th>标题1</th> <th>标题2</th> </tr> <tr> <td>数据1</td> <td>数据2</td> </tr> </table> -
<form>- 表单标签,用于创建用户输入表单。
<form action="/submit" method="post"> <label for="name">姓名:</label> <input type="text" id="name" name="name"> <input type="submit" value="提交"> </form> -
<input>- 输入标签,用于用户输入数据,如文本框、按钮等。
<input type="text" name="username" placeholder="输入用户名"> -
<label>- 标签标签,用于定义表单控件的标签。
<label for="email">电子邮件:</label> <input type="email" id="email" name="email"> -
<button>- 按钮标签,用于创建可点击的按钮。
<button type="button">点击我</button> -
<nav>- 导航标签,用于定义导航链接的部分。
<nav> <ul> <li><a href="#home">首页</a></li> <li><a href="#about">关于我们</a></li> </ul> </nav>
这些标签是HTML中最常用的部分。
shodan搜索网段
shodan search --limit 10 --fields ip_str net:1.1.1.0/24
参数讲解:
net:1.1.1.0/24>>net:是一个Shodan的搜索过滤器,用于指定一个IPv4网络范围;1.1.1.0/24是一个CIDR表示法的IP地址范围,表示从1.1.1.0到1.1.1.255的所有IP地址。>>CIDR(Classless Inter-Domain Routing,无类别域间路由)表示法是一种用于表示IP地址及其子网掩码的方法.
CIDR表示法中的计算
- 网络地址:将IP地址的主机部分全部置为0即可得到网络地址。
- 广播地址:将IP地址的主机部分全部置为1即可得到广播地址。
- 可用主机数量:对于IPv4地址,可用主机数量可以通过计算2的主机位数次方再减去2(减去网络地址和广播地址)来得到。
shodan搜索组织
shodan search --limit 10 --fields ip_str country:us org:nsa
这个命令的目的是在 Shodan 上搜索位于美国(
country:us)且属于美国国家安全局(org:nsa)的前10个设备
org:nsa>>用于限制搜索结果只包括属于特定组织(在这个例子中是“NSA”,即美国国家安全局)的设备
shodan搜索waf
shodan search --limit 10 --fields ip_str http.waf:safedog country:us
我没详细测试这个,以上三个ip是写笔记时候顺手测了测,也许能行,后续再专门搜搜找找.
waf的种类:(别瞎搞,当科普就行)
云WAF
- 腾讯云WAF:提供基于云端的Web应用安全防护,能够实时检测并阻断各种Web攻击。
- 阿里云盾(含WAF) :阿里云提供的综合性安全防护服务,其中包括WAF功能,能够抵御各种Web威胁。
- 百度云WAF:基于百度云的Web应用防火墙,提供智能防护和快速响应能力。
硬件WAF
- 绿盟WAF:绿盟科技提供的硬件WAF解决方案,具备强大的安全防护能力和灵活的部署方式。
- 安恒WAF:安恒信息提供的硬件WAF产品,能够针对Web应用的各种漏洞进行防护。
软件WAF
- D盾:一款知名的Web应用安全防御系统,提供实时检测、防护和应急响应功能。
- 云锁:集成了多种安全防护功能的软件WAF,能够保护Web应用免受各种攻击。
- 护卫神:专注于Web应用安全防护的软件WAF,提供全面的安全检测和防御能力。
其他WAF
- 创宇盾:知道创宇提供的WAF产品,具备强大的Web应用安全防护能力和实时威胁响应能力。
- 玄武盾:另一款知名的WAF产品,提供全面的Web应用安全防护解决方案。
- ModSecurity:一个开源的WAF模块,可以与各种Web服务器集成,提供灵活的安全防护能力。
waf针对在url中携带payload的态度就是直接丢弃掉携带payload的请求.
shodan搜索Mongodb数据库未授权登录
shodan search --limit 10 --fields ip_str "Mongodb server information -authentication" port:27017 country:jp
"Mongodb server information -authentication">>指定Shodan搜索那些描述中包含“Mongodb server information -authentication”的条目。这通常意味着搜索那些MongoDB服务器信息表明它们没有启用身份验证,即-authentication
jp的成功率不算高,如果jp的行不通,可以试试搜索kr的,感觉kr的成功率要高于jp。
MONGODB的基本操作
增
- 增加一条数据
db.collection.insertOne(
{ item: "canvas", qty: 100, tags: ["cotton"], size: { h: 28, w: 35.5, uom: "cm" } }
)
- 增加多条数据
db.collection.insertMany([
{ item: "journal", qty: 25, tags: ["blank", "red"], size: { h: 14, w: 21, uom: "cm" } },
{ item: "mat", qty: 85, tags: ["gray"], size: { h: 27.9, w: 35.5, uom: "cm" } },
{ item: "mousepad", qty: 25, tags: ["gel", "blue"], size: { h: 19, w: 22.85, uom: "cm" } }
])
删
- 删除单条数据
db.collection.deleteOne(
<filter>, // 过滤条件
{
writeConcern: <document>,
collation: <document>,
hint: <document|string> // Available starting in MongoDB 4.4
}
)
- 删除多条数据
db.collection.deleteMany(
<filter>,
{
writeConcern: <document>,
collation: <document>
}
)
改
db.collection.update(
<query>,
<update>,
{
upsert: <boolean>,
multi: <boolean>,
writeConcern: <document>
}
)
参数说明:
- query : update的查询条件,类似sql update查询内where后面的。
- update : update的对象和一些更新的操作符(如,inc...)等,也可以理解为sql update查询内set后面的
- upsert : 可选,这个参数的意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入。
- multi : 可选,mongodb 默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。
- writeConcern :可选,抛出异常的级别。
查
- 查询所有:
db.collection.find()
- 下面的实例返回inventory集合中status等于"D"的所有文档:
db.inventory.find( { status: "D" } )
- 下面的案例返回inventory集合中status等于"A"或"D"的所有文档。
db.inventory.find( { status: { $in: [ "A", "D" ] } } )
- 下面的案例返回inventory集合中status等于"A" 并且qty小于($lt)30的所有文档:
db.inventory.find( { status: "A", qty: { $lt: 30 } } )
- 下面的案例返回inventory集合中status等于"A" 或者qty小于($lt)30的所有文档。
db.inventory.find( { $or: [ { status: "A" }, { qty: { $lt: 30 } } ] } )
更多用法详见查询文档 | MongoDB-CN-Manual
shodan搜索Jenkins框架
shodan search --limit 10 --fields ip_str,port country:jp "X-Jenkins" OR "Set-cookie:JSESSIONID" http.title:"Dashboard" has_vuln:True
"X-Jenkins" OR "Set-cookie:JSESSIONID":这是搜索查询的关键字部分,使用了逻辑“或”(OR)操作符。它告诉Shodan搜索那些HTTP响应头中包含“X-Jenkins”或“Set-cookie:JSESSIONID”的条目。这两个关键字通常与Jenkins服务器(一种流行的持续集成和持续部署服务器)和Java Web应用程序(使用JSESSIONID作为会话标识符)相关联。http.title:"Dashboard":这个选项进一步限制了搜索范围,只查找HTTP响应标题中包含“Dashboard”的设备。这通常意味着这些设备有一个名为“Dashboard”的网页或界面。
这个可以搜搜jp的,成功率还算是高吧
JENKINS框架
Jenkins是一种持续集成的工具,功能包括:持续的软件版本发布、测试项目、监控外部调用执行的工作。
部署方式
3.1 jenkins触发式构建:用于开发环境部署,开发人员push代码或者合并代码到gitlab项目的master分支,jenkins就部署代码到对应服务器。
3.2 jenkins参数化构建:用于测试环境预上线环境部署,开发push代码或者合并代码到gitlab项目的master分支之后,并不会部署代码,而是需要登录到jenkins的web界面,点击构建按钮,传入对应的参数(比如参数需要构建的tag,需要部署的分支)然后才会部署。
3.3 jenkins定时构建:用于APP自动打包,定时构建是在参数化构建的基础上添加的,开发人员可以登录jenkins手动传入tag进行打包,如果不手动打包,那么jenkins就每天凌晨从gitlab拉取最新的APP代码打包。
辅助作用
- 自动化测试:Jenkins可以用于自动化渗透测试过程中的一些任务,通过编写任务,可以定期对目标系统进行安全测试,提高测试效率和覆盖范围
任务:漏洞扫描、安全测试等
- 持续集成与持续部署:渗透测试人员可以将Jenkins用于CI/CD流程,在开发和部署过程中进行安全测试,及时发现和修复安全问题。
CI/CD的基本概念
- 持续集成(CI) :开发人员将代码频繁地集成到共享代码仓库中,并自动进行构建、编译和测试。这有助于发现和解决代码冲突、问题和错误。
- 持续部署(CD) :经过测试和验证的代码自动部署到生产环境中,以实现快速且可靠的软件交付。
- 漏洞管理:Jenkins可以与漏洞管理工具集成,帮助企业管理和跟踪安全漏洞。渗透测试人员可以利用Jenkins的漏洞管理功能,了解目标系统中存在的安全漏洞,并指定响应的攻击策略
shodan网页端
搜索指定漏洞
以CVE-2019-0708为例,漏洞指纹:\x03\x00\x00\x0b\x06\xd0\x00\x00\x124\x00
总计
等价于命令行参数count
从上到下依次是,出现漏洞最多的国家、出现漏洞最多的端口号以及出现漏洞最多的组织
依次是出现漏洞最多的产品、出现漏洞最多的操作系统
这是右侧的显示情况,左侧依次就是存在漏洞的IP地址、组织、国家地区;中间是漏洞的名称;右侧就是输入的特征码
搜索指定设备
以路由器router为例
右侧内容从上到下依次是:
SNMP:
Uptime: 82759
Description: DEFAULT
Service: 3
Versions:
1
3
Name: Maxio
Contact: Router
Engine Boots: 0
Engineid Data: 80001f888044deb60966262267
Enterprise: 8072
Objectid: 1.3.6.1.4.1.56117
Engine Time: 0:00:00
Location: AP
Uptime: 82759
- 这表示设备自上次启动以来已经运行了82759秒。换算成小时、分钟和秒,大约是22小时59分钟19秒。
Description: DEFAULT
- 设备的描述是“DEFAULT”,这意味着没有为设备提供特定的描述信息,或者它被重置为了默认描述。
Service: 3
- 这通常指的是SNMP服务提供的服务类型或级别。具体数字“3”的含义可能依赖于特定的实现或文档,但通常与SNMPv2c或SNMPv3的安全级别有关。
Versions: 1, 3
- 这表明该设备支持SNMP版本1和版本3。SNMPv1是较老的版本,而SNMPv3提供了更强的安全性。
Name: Maxio
- 这是设备的名称,被命名为“Maxio”。
Contact: Router
- 这表示如果有关该设备的问题,应该联系“Router”。这可能是一个占位符或实际的管理员联系信息。
Engine Boots: 0
- SNMP引擎的启动次数为0。这通常用于SNMPv3中的上下文引擎ID的生成,表示自配置以来SNMP引擎没有重启过。
Engineid Data: 80001f888044deb60966262267
- 这是SNMP引擎ID的十六进制表示,用于SNMPv3中的消息认证和加密。每个SNMP引擎(或设备)都有一个唯一的引擎ID。
Enterprise: 8072
- 这是企业的私有MIB(Management Information Base,管理信息库)编号。MIB是SNMP中用于定义设备可以报告哪些信息的数据库。8072是一个私有的企业编号,表示该设备或MIB是由一个特定的企业定义的。
Objectid: 1.3.6.1.4.1.56117
- 这是对象标识符(OID),用于唯一标识SNMP MIB中的一个对象或一组对象。这个特定的OID与上述的企业编号相关,表示它属于那个企业的自定义MIB。
Engine Time: 0:00:00
- 这可能表示SNMP引擎自上次启动以来的内部时间或特定于SNMPv3的时间戳信息。在这里,它显示为0小时0分钟0秒。
Location: AP
- 这表示设备的物理位置是“AP”,是指亚太地区或其他含义。
资产监控
设置监控
在常规信息下的输入栏里填写要监控的目标,下面的通知是设置邮件通知服务。
需要注意的是,能够监控多少个IP,是能够在这个截图页面的右半部分显示出来的,在设置监控时可以留意一下。
添加邮件地址
如果你不想用默认的shodan邮箱(也许是这个邮箱也用不了),可以通过
Settings,进入到这个设置界面,默认的通知服务就是邮件,点击ADD,添加需要的邮件地址即可
通过命令行参数设置监控
- 添加监控>>使用
Shodan Monitor功能,可以监控特定IP地址或设备>>shodan monitor add <ip_address> - 管理监控>>查看当前监控列表:
shodan monitor list;删除某个监控>>shodan monitor delete <monitor_id>
shodan其余参数
SHODAN ALERT
Shodan的alert功能允许用户设置针对特定搜索条件的警报,当Shodan检测到符合这些条件的新设备或网络活动时,会向用户发送通知。
1. 创建ALERT
要创建一个新的alert,你需要使用shodan alert create命令,并指定搜索条件和接收警报的电子邮件地址。例如,如果你想监控所有运行特定服务的设备,你可以使用以下命令:
shodan alert create "service:ssh" your_email@example.com
这条命令会创建一个alert,当Shodan检测到任何运行SSH服务的设备时,都会向your_email@example.com发送通知。
2. 查看ALERT列表
要查看你当前设置的所有alert,你可以使用shodan alert list命令。这将列出所有alert的ID、搜索条件、创建时间和状态。
shodan alert list
3. 删除ALERT
如果你不再需要某个alert,你可以使用shodan alert delete命令并指定要删除的alert的ID来删除它。例如:这条命令会删除ID为123456的alert。
shodan alert delete 123456
4. 接收ALERT通知
当Shodan检测到符合你设置的alert条件的新设备或网络活动时,它会通过电子邮件向你发送通知。通知中通常包含设备的IP地址、端口、操作系统和服务等信息。
5. 使用过滤器创建更具体的ALERT
Shodan支持多种过滤器,你可以使用它们来创建更具体的alert。例如,如果你想监控特定IP地址范围内的设备,你可以使用net过滤器:
shodan alert create "net:192.168.1.0/24" your_email@example.com
这条命令会创建一个alert,当Shodan检测到192.168.1.0/24网段内的任何新设备时,都会向你发送通知
SHODAN DOMAIN
查看特定域名的相关信息
shodan domain hostname
查询域名信息,但因为shodan本身的非实时性,这个参数用起来可能不是很舒服。
SHODAN SCAN
使用scan参数进行时效性更强的扫描,尽可能减少因shodan非实时性扫描带来的误报
shodan scan submit ip
提交对特定IP地址的扫描请求
shodan scan list
监视提交的扫描请求的状态,从列表条目中,用户可以获取扫描ID及其状态。当扫描状态为“DONE”时,表示扫描已完成。
通过设备状态以及设备版本计数
shodan stats --facets ssl.version has_ssl:true
shodan stats:这是用于获取统计信息。--facets:这个参数后面跟的是想要统计的具体方面(facet),即你希望获取哪些特定信息的统计结果。ssl.version:这表示你想要统计的是 SSL/TLS 协议的版本信息。SSL(安全套接层)和 TLS(传输层安全协议)是用于在互联网通信中提供安全性的加密协议。has_ssl:true:这是另一个过滤条件,表示只对那些启用了 SSL/TLS 的设备感兴趣