恩啊,恩啊,现在的人也是,一点黑客的道德都不讲,黑了就留下手法吧而且还上传东西乱搞,我们做的政府网站也被搞了,凭以前学生年代乱搞的经验,补了个SQL注入漏洞,然而那家伙乐此不彼,还进的来,靠,没有必要这样搞吧,寒酸到此,介绍SQL注入原理; //在我们运行网站时候,例如查询一条新闻,为了防止重复,我们是通过查询新闻固有的ID来找到新闻信息。 //我们通过参数、Cookie等传入变量,去运行SQL语句 //如: string NewId = “0001”(参数,获取太长,就不写了,知道这个是获取的就行); 运行SQL = "select * from News表 where News_ID='" + NewId + "'";然后,只要在参数上面做个修改 就在你的参数后面来个 "你的参数' delete * from news表 where '1'='1" 注意,他以单引号开头,不以引号结束,这样原来句子就变为: select * from News表 where News_ID='' delete * from news表 where '1'='1' 一句话就成为两句,后面的删除就是注入的语句,MS-SQL还可以提升权限。
上面那句应该是 select * from News表 where News_ID='0001' delete * from news表 where '1'='1' 解决办法,检查参数是否有引号,SQL操作作为事务挂起,监视返回行数。最后,我想骂人,MD攻一次算你技术高,大家学习一下也罢了,你三天两头来这里“炒旧饭”刚刚重装系统又弄,讲学习JB啊。还有,哪位朋友还清楚其他的攻击方式,请说下原理,大家探讨,谢谢。我这边还被攻住,看来还不止这个,漏洞也没有时间去一个个测。
//在我们运行网站时候,例如查询一条新闻,为了防止重复,我们是通过查询新闻固有的ID来找到新闻信息。
//我们通过参数、Cookie等传入变量,去运行SQL语句
//如:
string NewId = “0001”(参数,获取太长,就不写了,知道这个是获取的就行);
运行SQL = "select * from News表 where News_ID='" + NewId + "'";然后,只要在参数上面做个修改 就在你的参数后面来个
"你的参数' delete * from news表 where '1'='1"
注意,他以单引号开头,不以引号结束,这样原来句子就变为:
select * from News表 where News_ID='' delete * from news表 where '1'='1'
一句话就成为两句,后面的删除就是注入的语句,MS-SQL还可以提升权限。
select * from News表 where News_ID='0001' delete * from news表 where '1'='1'
解决办法,检查参数是否有引号,SQL操作作为事务挂起,监视返回行数。最后,我想骂人,MD攻一次算你技术高,大家学习一下也罢了,你三天两头来这里“炒旧饭”刚刚重装系统又弄,讲学习JB啊。还有,哪位朋友还清楚其他的攻击方式,请说下原理,大家探讨,谢谢。我这边还被攻住,看来还不止这个,漏洞也没有时间去一个个测。
1、数据库默认安装的漏洞;
2、网站服务器默认安装的漏洞(比如apache、iis等);
3、php本身默认安装的漏洞。
如果你的网站架构是基于以上几种,建议思考一下。最后考虑一下操作系统默认安装的漏洞吧。这些漏洞写出来足够出好几本书了。具体的直接google就可以。常用漏洞还是很多的。