web常见漏洞
1、SQL injection
例如:
post提交时有个url:http://www.xxx.com/news.asp?id=1
SQL语句为:select * from news where id=1
改造成:http://www.xxx.com/news.asp?id=1 and 1=(select
count(*) from admin where left(name,1)=a)
则SQL变成了:select * from news where id=1 and 1=(select
count(*) from admin where left(name,1)=a)
意思为:admin表中如果存在字段名为name里左边第一个字符是a
的就查询news表中的id为1的内容,如果and后面的语句为真,就
会返回正确的页面。利用此可以获得后台用户名和密码
测试:在地址栏上分别提交以下两条url:
http://www.xxx.com/news.asp?id=1 and 1=1
http://www.xxx.com/news.asp?id=1 and 1=2
若第一次返回正确内容,第二次返回不同页的或不同内容说明
news.asp存在SQL injuction
2、对文件操作相关的模块的漏洞
原理:
对上传:如果对上传得文件类型没有限制,就有可能被上传木马
等
对下载:如果下载文件的url为
http://www.xxx.com/download.asp?path=../conn.asp就有可能
下载到数据库路径甚至密码等信息。
测试:试上传asp,jsp,php,cgi等格式的文件,看能否上传
3、COOKIES的欺骗
原理:COOKIES放在客户端不太占用服务器的资源,但是放在客
户端很容易被人修改加以利用,所以一般论坛前台登陆用
COOKIES,后台是用session,因为前台登陆比较频繁,用
session效率很低,但论坛程序管理员在前台也有一定的权限,
如果对cookies验证。
测试:推荐使用myword浏览器,可即时显示及修改cookies,尝试
修改里面的对应位置。
不严的话,将严重影响web程序的正常工作。
4、本地表单提交的漏洞
表单的action只接受表单的提交,所以表单是web程序的接口,
必须一个投票系统,a,b,c,d各项的值分别为100,80.,60.,40,但
是如果先把这些页面以html形式保存在本地硬盘上,然后修改其
value,然后提交,action会不会接受?
5、强制后台浏览
绕过登陆页面,直接提交系统文件夹或文件页面,不完善的系统
如果缺少index.htm等默认首页文档页,就可能被绕过登陆验证
页面。
6、跨站脚本攻击