常见安全问题

来源:互联网 发布:在淘宝网上怎么买车 编辑:程序博客网 时间:2024/05/23 19:35

web安全问题常由直接和间接的输入导致

直接输入:GET、POST、COOKIE、HTTP头环境变量;

间接输入:数据库取出的数据、编码的用户数据


1.缓冲区溢出(长字符)

2.元字符(HTML<>)

3.路径遍历(../../../pass/root)

4.sql注入检查(‘where 1=1’ ; 

http://victim/news.php?id=3721、

select * from news where id=$id、

select * from news where id=3721;

http://victim/news.php?id=0 union selectname,pw from users 、

select * from news where id=$id、

select * from news where id=0 union selectname,pw from users

泄露敏感信息
攻击者可以获取后台数据库的种类、版本,操作系统信息,数据库名、表名、字段名以及数据库中的数据信息
泄露敏感信息
无需知道口令就能以用户身份登陆应用系统
篡改敏感数据
对数据库进行增加、删除、篡改的操作
执行任意系统命令
利用数据库支持的特定功能,执行任意命令

5.跨站执行脚本

http://www.example.com/?name=<script>alert(/XSS/)</script>

展现:

<html>

<body>

<p>Hello<script>alert(/XSS/)</script></p>

</body>

</html>

窃取Cookie
document.cookie
页面内容被篡改
Js代码改写/跳转页面
蠕虫
Myspace
新浪微博
恶意代码
显示用户数据时对“<>&”HTML符号进行编码转换
htmlspecialchars
过滤必要的XHTML属性及各种编码,尤其在WEB提供样式功能的时候
设计时要考虑到关键内容不能由用户的直接数据显示,要有转换或后台间接审核的过程
WEB应用扫描器对程序进行检测

7.vUrlRedirect钓鱼攻击原理
vredirect.htm?target=http://www.hacker.com

UrlRedirect策略
目标地址应限制跳转到当前域内
如果需要跳转到外部链接需要有url的白名单


8.资源读写权限(通过URL提升、通过改变Userid  

 1.用admin登录,进入特有的功能,将URL复制
 2.用普通用户登录,粘贴URL,是否会进入特定功能

1.在URL或HTTP request中查找userid ,修改成其他userid,是否能看到其他用户信息

1.用admin登录,录制request,
   用普通用户登录,回放request,能否访问admin功能

9.操作的权限()


10.session的权限()

11.vAccessControl攻击例子(前台代码)

<formaction="http://www.example.com/message/pmsg/read.html"method="post">

<inputtype="hidden" name="messageId" value="54981193">

<input type="button"name="delete" value="删除留言"onClick="delMessage()"> 

后台

检查了角色

但是短消息属于用户,不属于角色

publicbooleancanManageMssage()

 {

 if (isAdmin())

 { return true; }

 ……

}

解决方式,消息必须属于用户,才能有该用户删除


常用安全扫描工具

appsan

Acunetix

WebInspect





0 0