服务扫描
不能单靠端口就说21端口这是FTP服务,我们完全可以把某服务开到某端口上,不能靠端口就说端口上运行的应用。
可以看软件是什么版本 然后到相应的官网看看如果是老版本的软件那么就可能会公布一些漏洞,然后我们用这些漏洞就可以远程直接控制这个目标操作系统控制权,找到这些信息之后就可以找到利用代码发现利用方式用逆向工程用模糊查询来发现这个漏洞的利用方式。还要识别目标的操作系统是WINDOWS还是LINUX 是不是缺少某个补丁然后看看是不是存在漏洞和弱点取得管理员权限或者拿到用户权限然后提权成管理员进行后续的攻击。
如何识别这些信息?
-
banner捕获 (最不准确,准确性最不高的一种办法)连接一个应用端口21端口反应一些服务器的banner信息比如显示是VS FTP的可能一个比较有漏洞的版本我们可以通过这个信息去识别,但是这个信息可能是目标系统的这个管理员伪造出来的而且其实这个目标系统的这个加固方案里头经常会用我们要修改banner去清除来迷惑扫描者所以banner的信息获取呢可以作为目标服务器上应用的这个版本和类型识别的一种手段但也只是一种手段而已,不能去作为这个确切的依据来相信诊断的结果。
-
服务识别和snmp识别
nmap集成大量的目标系统返回信息的这个指纹信息基于指纹信息来识别,nmap里有大量的指纹信息库用这些特征的指纹信息可以看出目标端口上跑的什么应用来看跑的什么版本就会比banner准确的多,如果目标系统配置的配置习惯不够好会开放出snmp这样的服务端口如果snmp配置不当可以通过snmp扫描来识别这个扫描会比较准确的识别目标系统和目标系统软件的版本,因为snmp是通过系统内部信息来进行探测和搜索所以准确性会高一些。目标机器边界上会有一些边界防火墙所以我们要适当的识别一下这是什么防火墙会有什么过滤机制需要绕过和躲避它。
banner捕获
软件开发商
软件名称
服务类型
版本号
知道版本可能直接定位到漏洞
这个时候用隐蔽扫描或者僵尸就不行需要建立完整的连接,用隐蔽或僵尸基本取不到很好的效果需要完整的连接才能取到更准确的信息服务。
还要结合另类的服务识别方法
特征行为和响应字段
不同的响应可用于识别底层操作系统
就比如ping windows和linux的包头和字段都是不同的所以可以用这种方式识别操作系统
SNMP 最容易疏漏的服务
简单网络管理协议
community string (算是snmp的密码身份认证信息)
信息查询或重新配置
kali也包含可以对防火墙识别和躲避的工具
服务扫描–banner
nc -nv IP地址 端口
如图所示这样就查到banner信息了
后续可以根据账号进行密码猜解。
也可以用脚本来建立TCP连接然后进行应用层的传输
也可以python脚本获得banner信息
dmitry -p IP 表示执行TCP扫描
dmitry -pb IP 读取从扫描端口接收的banner信息 常用端口扫描
nmap也可以发现banner
nmap -sT IP -p 端口(也可以指定一个端口范围) --script=banner.nse
可以进入这个目录下查看nmap的扫描脚本
cd /usr/share/nmap/scripts/
来源:CSDN
作者:HABH
链接:https://blog.csdn.net/hacker681/article/details/103791923