最近淄博市对政府部门的网站进行了批量的安全检查,给了一个结果书,说我08年做的那个监督所的程序出现严重漏洞,有sql注入 盲注的严重漏洞,还有xss跨站共计问题
xss我实在想不清楚是如何跨站攻击的,因为本上lifetype这个博客框架做得足够细致。
于是我把这个监测工作交给,百度安全检测和360安全检测,发现360安全检测发现的问题比较多,但有用户反应使用drupal竟然也显示盲注漏洞,不过不管他,我且先看下去。
首先便是可访问目录列表。哇塞吓死我了,不行赶紧封了
在.htaccess文件中写入
<Files "*">
Order allow,deny
Deny from all
</Files>
通过这里防止目录文件被下载
然后再文件中继续写入
Options -Indexes
禁用目录列表
现在虽然用的人少了,但是还是有不少用户群体的。
为了查找sql注入是如何做的,我从服务器上下载下来近一年来的访问日志,想到之前在电脑报上别人的示例,注入一般开始是1=1,我就搜索,结果还真找到了
最后发现,我所用的lifetype的$this->_request程序在赋值的时候,没有过滤,我就在想对这个属性进行
修改吧,结果发现他有一个过滤类,但是需要对引用$this->_request 所有地方进行修改,
幸好,有一个入口文件home.php,哎,我懒得动手,于是在入口文件上对前台使用的数据id等之类使用interval方法,op等使用了strip_tags方法 没办法啊
if($_REQUEST['op'])
$_REQUEST['op']=strip_tags($_REQUEST['op']);
if($_REQUEST['newsId'])
$_REQUEST['newsId']=intval($_REQUEST['newsId']);
if($_REQUEST['categoryId'])
$_REQUEST['categoryId']=intval($_REQUEST['categoryId']);
if($_REQUEST['p'])
$_REQUEST['p']=intval($_REQUEST['p']);
修改完毕交给360继续测试。
360安全检测