最近一直有人在问我学习网络安全有什么捷径没有,说他参加了很多培训班,上过不少课,也交了不少钱,但到现在自己真正掌握的东西很少,自己也感到很迷茫。关于这个问题有很多解释和问题,我想最关键的东西就是他没有自己“原创”的东西,拿来主义固然好,如果没有消化,没有转化为自己的东西,学猴子掰苞谷,掰一个丢一个,最后手中什么也没有。网络安全最大的特点就是研究和实践,唯有研究才能深入,才能掌握它的精髓;唯有实践你才能真正的了解它,掌握它。其实写本文完全是来自一个项目,一个网络安全渗透项目,在渗透测试过程中我发现了这个问题,通过研究和思考,所有有了这篇文章,写出来跟大家分享,大牛牛们可以直接Pass,呵呵。本文就按照实际操作流程来介绍吧。
主要知识点
(1)使用superscan3.0扫描指定单个IP地址或者IP地址范围端口开放情况
(2)扫描端口的处理思路
(3)采用跳板的原则
(一)渗透准备
1.准备工具和确定渗透攻击对象
在进行渗透前需要准备一些工具软件,在本案例中用到工具软件相对较少,当然还是需要准备一些其它的东东,呵呵,我最喜欢看六道的《坏蛋是怎样炼成的II》,我最欣赏的就是他每一次作战都需要在脑海中对每一个细节像放电影一样放一遍,确认无误后再开始付诸实现。本次渗透主要需要准备下面的一些东西:
(1)端口扫描工具superscan
(2)具备Telnet的服务器或者肉鸡一台
(3)预扫描IP地址段
说明:
本次实施渗透测试的是一个固定IP地址段,由于要保护客户的隐私信息,在我所进行的渗透中确实能够出现的场景,可能由于IP地址范围等因素的影响可能无法重现,但是本文介绍的思路确实可行。
(二)实施渗透扫描和连接测试
1.实施端口扫描
直接运行superscan3.0在IP地址起始和终止中分别输入欲扫描的IP地址,可以是某一个IP地址也可以是一个范围。在主机扫描类型中需要勾选“查询主机名”和“显示主机响应”,然后选中“列表中的端口”,本次扫描是对某一段IP地址进行全端口扫描,所以自定义扫描端口范围为“1~65535”,最后单击“开始”实施端口扫描,结果出来后如图1所示。
图1 对指定IP范围主机实施全端口扫描
注意:
(1)在实际渗透过程中可以根据需要进行扫描,大范围扫描时不要全扫描,否则时间会特别漫长。如果是仅仅针对23端口,则可以只选择23端口。
(2)扫描可以在肉鸡上进行,需要特别注意的是superscan扫描软件不能自动保存扫描结果。
2.整理并测试端口扫描结果
如果扫描的IP地址不是特别多,很快就会在superscan中得到扫描结果,如图2所示,可以看到在本次扫描中开放的端口中21端口最多,23端口仅仅一个。直接选中开放了23端口的服务器,然后右键单击在弹出的菜单中选择“Telnet”登陆。
图2整理并测试端口扫描结果
3.Telnet登陆效果
如果telnet连接成功则会出现如图3所示的要求输入密码和用户名的登陆窗口。
图3 Telnet要求进行验证
说明:
(1)在一般的服务器上Telnet都是需要用户名和密码的,但在实际测试过程我们发现 路由器和防火墙的密码缺省为空,其用户多为“admin”。
(2)如果碰到需要验证的,可以进行猜测,多次猜测不行后,只能放弃,关于路由器密码的破解,我会在下一篇文章中介绍。一般我们仅对不需要密码的路由器进行操作。
4.继续扫描和测试
重复上面的步骤继续进行扫描和测试,后面终于出现一个我们比较熟悉的窗口,如图4所示,表示成功Telnet到IP地址为2**.***.***.130的路由器或者服务器成功。我从网上使用Google搜索了一下,telecom多为电信设备,一般为路由器。如果出现这个东东,恭喜你,发了!
图4 成功使用Telnet连接成功
(三)跳板思路的测试和验证
由于路由器都提供了Telnet功能,因此可以先Telnet到路由器,或者先Telnet到肉鸡服务器再Telnet到路由器,形成“本地”-“肉鸡”-“路由器”-“工作平台”或者“本地”-“路由器”-“肉鸡”-“工作平台”连接线路,从而达到隐藏本地IP的目的,也就是通常意义上说的“跳板”
1.Telnet到跳板服务器或者肉鸡
在telecom提示符下输入需要连接的服务器,在本例中直接输入“telnet 218.***.***.*** 443”,连接该服务器的443端口,telnet默认端口为23端口,在本例中我们对该服务器的Telnet端口进行了修改,便于隐藏。如图5所示,显示一个登陆信息,显示的信息表明我们telnet的服务器是Windows 2000 Server,在Login中输入用户名“Administration”,接着在“Password”中输入该用户所对应的密码,验证成功后会出现如图6所示的画面。
图5 从路由器Telnet到肉鸡
图6 Telnet连接成功
2.验证Telnet效果
在肉鸡上执行“IPconfig /all”命令可以查看肉鸡的网络配置情况,如图7所示。这表明我们通过路由器Telnet出来后可以在新的Telnet上执行命令,接着使用“netstat -n | find "443" ”查看路由器和肉鸡的网络连接情况,如图8所示,这也就从事实上验证了跳板的可行性。
图7 在跳板上执行命令
图8 查看网络连接情况
说明:
(1)在Telnet上理论上可以建立N个连接,但在实际使用过程中,只要有五个以上就可以了,其推荐线路为“本地”-“国(内)外肉鸡”-“路由器”-“国(内)外肉鸡”-“工作平台”。一般追踪者就很难追踪了。
(2)本文提的思路适合于在DOS命令下执行攻击,也就是批处理攻击类型,对熟悉Linux下的攻击尤为适用。
(四)路由器攻击和测试
1.在路由器上执行命令
在telecom提示符下输入“?”获取帮助信息,如图9和图10所示,路由器有多条命令,根据这些提示输入命令进行执行,在执行过程中发现老是出错,仅能显示一些简单的信息,由于本人对直接在路由器上执行命令不太熟悉,未深入进行测试,熟悉路由器的朋友可以进行测试,看看能够获取一些什么东西。
图9显示路由器的命令
图10显示路由器的命令(续)
2.路由器提权
既然进入了路由器,那就看看如何进行提升权限,看看是否有这方面的漏洞,通过查询还真找到一些有关路由器提升权限的漏洞,这些漏洞需要构建才能实现,由于本次主要是跳板方面的测试,因此关于路由器渗透方面留在后面进行研究。
(五)总结和思考
本次渗透测试完毕后,有以下一些值得思考和研究的问题:
(1)如何在获取一定权限后对路由器进行渗透以获取真正的权限,也就是完全控制路由器。
(2)如何就本次发现的问题进行加固。我个人认为在路由器初试设置完毕后可以关闭23端口,或者对23端口进行IP限制访问,同时对路由器设置一个比较复杂的用户名和密码。
(4)如何对路由器进行劫持和挂马。本着研究的态度对路由器劫持和挂马技术进行研究。
|