学校的网站被入侵
看看~最 新 通 知
>>更多
2005-2006第二学期公选课第二轮选课通知
2005-2006第二学期公选课第一轮选课通知
http://jwc.gdut.edu.cn/jwc/xwen//images/mark.gif
网站系统有漏洞,呵呵。
2006-2-10
http://jwc.gdut.edu.cn/jwc/xwen//images/mark.gif
网站系统有漏洞,呵呵。
2006-2-10
网站系统有漏洞,呵呵。
网站系统有漏洞,呵呵。
请尽快修复!
来自网友的提醒。
[ 本帖最后由 楚云神龙 于 2006-2-11 13:49 编辑 ] 晕~! hoho~已经被删掉了咧。。 上学期尾我已经同教务处的老师说过,到今天竟然还没补漏洞,晕死!!!(事先声明,那些网页不是我改的,呵呵)
以下为我的E-MAIL
谢谢
已通知教务处
考好试
> -----Original Message-----
> From: esafe@163.com
> Sent: Wednesday, January 11, 2006 20:56
> To: huzb
> Subject: 教务处网站漏洞
>
> 胡老师:
>
> 学校教务处网站存在严重的SQL注入漏洞,可以让入侵者完全控制sql服务器和执行任
意系统命令。我不知道怎样联系那边的老师,所以向你说一下
日期: 2006-01-16 13:33:00( 38 天, 10 小时, 46 分钟 前)
发件人: jwc6@gdut.edu.cn拒收邀请
收件人: esafe@163.com
主题: 请教-教务处 [新窗口打开]
同学,你好:
非常感谢你对我部门系统提出的意见。
因能力有限,不知问题出在何处,请指出。可以的话请告知修改意见,谢谢!
教务处
2006。01。16 我大二的时候曾经发过email给教务处,当时他们问我怎么改,我就给了几个提示,后来他们也不知怎么搞了就没回音,而问题依旧存在.
学校很多B/S系统都有注入漏洞的,现在都眼不见为净了. ...以前帮某公司做新闻发布系统时发现上级站点有SQL注入漏洞, 当时很晕.现在没了.
[ 本帖最后由 庐山升龙霸 于 2006-3-30 10:10 编辑 ] 虽然不懂注入是怎样,但明文密码未免太那个了,用JAVA的包写个MD5加密不用力 注入主要的原因出在sql语句上.
主要表现为检查密码时采用如下的sql
假设提交的用户名为变量a
提交的密码为变量b
则查询语句为
"select * from admin where username='"+a+"' and userpwd='"+b+"'"
执行语句后只要判断返回的记录集是否为空的就ok.
这里存在的问题是, 我们可以利用sql的特点, 在密码这一项里面, 变换一下.
假设我们提交的密码为"' or '1'='1",用户名随便,假设为"abc"
那么上述的sql语句执行后会变为
"select * from admin where username='abc' and userpwd='' or '1'='1'"
由于后面是or '1'='1'
所以这个查询会返回admin表所有的记录!
如果单纯地判断记录集为空的话, 那么这时无疑是会显示登录成功!
之前给了一个还有这个漏洞的网站, 觉得有点不厚道. 还是改掉算了. 大家要注意哦.
我的一个简单的解决办法是先查找用户名
select * from admin where username='abc'
然后返回记录集,注意上面这句一样可以注入, 会返回所有的记录
然后我们判断密码, 此时指针是指向第一条记录的, 我们取密码域跟提交的值比较. 这里的密码用MD5加密.服务器端密码是以密文形式存放的. 这样注入的语句经MD5函数转换后便使得注入的那部分无效化,这样可以很大程序上避免注入攻击. 但不排除某人碰中第一条记录密码的可能, 呵呵.
正确的处理办法是限制注册用户名和密码不能含有空格等特殊字符.然后登陆判断时可以查检查这些字符. 然后再组成sql语句.
[ 本帖最后由 庐山升龙霸 于 2006-3-30 10:14 编辑 ] 楼上解释得好!连我都听明白了,呵呵! ...我忘了也声明...那个网页不是我改的...呵呵...
页:
[1]