领土之争——入侵某视讯服务器回忆录

2023-12-04 0 547

老早就打算写这样一篇文章:能够细致地反映出入侵中攻防的具体内容,我想这比单纯的技术文章有趣的多。有鉴于此,我将尽力完整描述入侵过程中的思考方式。

1.石榴裙下的kk

说实话,就第一次拿到权限而言,没有多少技术含量。我花了N久时间收集KK网络的各种信息,最终以arp欺骗获取权限。

kk的重要端口配置:ftp-21212;mssql-12345;terminal services-54321;

我们可以看到kk网管是有安全意识的,他把重要的数据端口改成10000以上的高端口,这在入侵之初就让我吃了闭门羹。因为我有个不太好的习惯,第一次扫描端口总是在1-10000内。而以上端口是我某次发狠心扫描1-65000发现的。

有了这个发现,我成功利用cain的arp欺骗功能获得:ftp口令,mssql口令,终端口令

2.webshell下的徘徊

再次证明kk网管对安全的意识就是在webshell环境中的遭遇,我是直接使用ftp上传shell,起初是海阳的2006版,shell没有写权限。

当时还没有嗅到终端口令,我在webshell里考虑着提权的可能性。mssql是2005版的,连接用户权限是db_owner,作为不大。ftp是FileZilla Server这款软件配置的。我之前入侵kk同段server的时候遇到过,这玩意的配置文件默认会泄漏口令,而且是明文的。

但令我失望的是kk网管的专业再次延长了其沦陷的时间。我从他的配置信息里读到32位的md5加密口令,破解失败。

当然我收获了第一步的成功果实,利用数据库管理功能刷了些点,自己爽了一晚上。

3.天堂与地狱的距离仅一步之遥

在我嗅到终端口令后,我一举拿下kk的2台重要server,其中一台是数据服务器。(口令不一样)

我很明白:kk网管很专业,也很勤快,几乎每天都会上来几次。我必须把后门做的隐蔽些。于是我做了较为详细的计划,如下:

a.我上线的时间应该是周末早上(这类成人站点晚上营业,周末早上是最安全的),避开网管

b.两台机子上的后门放置方式应该不一样(防治一台被查出,另一台也挂掉),后门也应该是多道的

c.日志处理要极谨慎

于是我在周六的早上6:00,悄悄登陆,分别做了以下工作。

1.我在有web的服务器上(有多个网站)的几个网站都插了一句话马,在隐蔽目录直接留了马,并修改了时间属性

2.一台机子我做了name$这样的隐藏帐号;而另一台我把sqldebugger用户克隆成administrator

3.我在数据库服务器上放了端口复用后门(后来发现tcp/ip筛选导致我这个后门无法使用)

4.我记录了所有已经获得的口令,并仔细查看了web网站结构,后台登陆口,数据库内的管理帐号(密码是加密的),包含经销商、主播、会员等的数据

5.我清理了曾经用过的程序日志,悄悄退出,并决定不再轻易登陆

6.arp依然是我的一道后门

然而,即便如此,接下来的几天,我都无法阻止权限的丢失。(当然主要暴露原因是我刷库造成的)

先是管理员发现了webshell的存在,他果断的直接使用备份还原。(kk的网站不大)接下来他又觉察到了FTP口令泄密,修改口令,并且做了ip限制。(这是我在后面使用放置在其他站的webshell查看配置文件知道的)。

再接下来,他又对sql端口,终端端口做了ip安全策略,仅允许指定的ip和ip段访问。这样我即使有口令也无可奈何了。

4.领土之争

kk的web脚本是aspx的,原先我留的aspshell总是被他抓到,我于是留了个心眼,藏了几个aspxshell混在里面。果然管理员并没有发现。(后来知道是禁用了asp)

于是我面临这样的处境:

我有一个aspxshell(lake2的)可以运行cmd,一个admin权限的用户口令。

限制是:shell没有写权限,lake2的这款shell连接sql时,遇到非1433端口,无法连接。而我又不能上传新的shell上去。

有人问:你怎么不用nc反弹呢?

kk做了tcp/ip筛选,对tcp端口的出站访问做了严格限制,仅允许80,21212,12345,54321,1935(flash media server).这也是我的端口复用后门失效的原因.(其实端口复用后门不是真正的复用,还是要用到其他端口的)

又有人问:psexec(pstools套件里的这个工具不是可以用吗?)

psexec的运行需要先决条件:即rpc共享开启,需要开启server,workstation服务.(kk的这两个服务是关闭的,而我在shell下是没有权限启动服务的).即便如此我在本地测试的时候都没有成功.

我考虑了3套可行方案:

a.我想到了runas命令可以其他用户身份执行指令,运行程序

b.sql的命令行用法:isql

c.入侵他允许连接的那些ip和ip段中的至少一台,作为跳板进去.(这个列表我已经获得)

最终我成功的2条.

a.runas需要二次交互,直接命令行是无法完成的,需要写脚本,或利用第三方程序.脚本我google到一些例子,本地都没有测试成功.工具也只是听说,无缘得见,本方案失败.

b.isql的用法

isql -S ip,port -U login_id -P pass -d database -Q "SELECT * FROM TABLE"

我翻阅了网上的资料,以上命令是正确的,但我在shell下连接时,却提示“登陆失败”。苦恼许久,最后才发现当pass中含有特殊字符时需要用“”包含起来。这一发现让我顺利的解决刷库问题。

接下来我尝试了猜解sa用户的口令,以期望用此来提升权限。失败

c.当我在第二套方案遇到问题时,我一边在网上翻阅资料,一边尝试了第三套方案。这中间遇到了一个问题。

我成功的拿到一个shell,并且找到了sa口令,本以为事情会很顺利。问题却来了:

内网,我需要上传lcx端口转发工具,才能远程登陆。在我上传的时候,我发现无论我上传什么,都只出现一个21B大小的文件。然后我利用tftp,ftp,vbs下载均告失败。

这个问题困扰了我几天。

后来我想起是不是因为组件的问题,导致我上传文件失败?我浏览了server的程序文件夹发现其安装有另外的上传组件。这坚定了我的判断。于是解决方案也随之出炉了:

我找了一个无组件上传脚本,顺利的解决了文件上传问题。当然这里遇到我们亲爱的瑞星的小小阻扰。(以前瑞星对加壳的文件查杀能力是很弱的,新版这方面有所提升,当然免杀一个lcx并非难事,就此不表)

有了上面的成功,我成功的再次进入kk的服务器。

5.好事多磨

当我得意的用刷库的帐号去网站溜达的时候,却发现我无法正常使用该帐号,总是在连接到它的3号视讯服务器的时候,当掉。更严重的时,几次之后我的ip就会被封锁。

我意识到问题的棘手。通过抓包,我获取了3号视讯服务器的ip。

并再一次成功入侵,这次入侵更有了一些意外收获。我在翻查msn聊天记录的时候,得到很多重要的口令。更对整个公司的运作有了充分的了解。

6.尾声

这场领土之争谈不上谁胜了,而我写此文的目的也不仅是展现一次入侵,更是一次防守。立体的攻防演练,我们不防当作一次黑盒测试。

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

悠久资源 入侵防御 领土之争——入侵某视讯服务器回忆录 https://www.u-9.cn/security/fangyu/72190.html

常见问题

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务