第一次攻击,从自己的网站开始。
我几天前对自己刚写完的这个blog程序做了安全性测试,之所以现在贴出来是因为这两天把这些个问题都fix掉了,否则贴出来给大家攻击就不好了:)
基本信息:
PHP + MySQL
1. Blind SQL Injection
b) 因为这个show_id的值肯定是一个整数,而由request传入的是string,所以用(int)强制转换,PHP会把100001 AND ‘z’>’a’ 转换成100001。
c) 如果数据库中没有这个id,直接转到404 error page:header(“location:404.php”);
2. Cross-Site Script
http://cyberai.com/inputfilter/
b) 过滤 <> 符号,<>符号是html代码的内容,可以用str_replace函数把他们替换成 < 和 >
$foo = str_replace(“<“,”<”,$_REQUEST[‘info’]);
$foo = str_replace(“>”,”>”,$foo);
小节,这是两个主要的应用开发的漏洞,其它比如Directory Listing 等属于服务器设置的问题。