如何实现网页防篡改

最近想和朋友搞一个防篡改的东西,我自己罗列了一些,咨询下各位篡改网页的途径和相应的方法,小弟不才,不胜赐教.

一、网页篡改的途径
(1)SQL注入后获取Webshell:
黑客通过web应用程序的漏洞,通过SQL语句提交非法的语句到数据,通过系统以及第三方软件的漏洞获取web的控制权限或者服务器权限;
(2)XSS漏洞引入恶意HTML界面:
被动的跨站攻击可以在合法的地方引入非法的HTML或者JS代码,从而让访问者“正常”的改变页面内容;例如:校内网蠕虫;
(3)控制了Web服务器:
攻击者可能通过服务器或者第三方的漏洞,获取了服务器权限、数据库管理权限进而修改页面;
(4)控制了DNS服务器:
攻击者对网站的域名服务器进行渗透,获取了域名的解析权限,改变了解析地址以达到篡改的效果;例如:百度被黑事件;
(5)遭遇了ARP攻击:
攻击者可能会针对web服务器所在的外段进行攻击,当掌握了同网段某台机器以后对web服务器所在的主机发送ARP欺骗包,引诱访问者或者web服务器指向其他页面以达到篡改效果;

二、网页防篡改的途径
(1)给正常文件一个通行证;
将正常的程序文件数量、名称记录下来,并保存每一个正常文件的MD5散列做成数字签名存入数据库;如果当遇到黑客攻击修改主页、挂马、提交webshell的时候,由于这些文件被修改过或者是新提交的,没有在数据库中存在,则将其删除或者恢复以达到防护效果;
(2)检测和防护SQL注入攻击;
通过过滤SQL危险字符如:“’、select、where、insert、,、;”等等将其进行无害化编码或者转码,从源头遏止;对提交到web服务器的数据报进行过滤检测是否含有“eval、wscript.shell、iframe”等等;
(3)检测和防护DNS攻击解析;
不断在本地通过nslookup解析域名以监视域名的指向是否合法;
(4)检测和防护ARP攻击;
绑定MAC地址,检测ARP攻击并过滤掉危险的ARP数据报;
(5)过滤对WEB服务器的请求;
设置访问控制列表,设置IP黑名单和白名单过滤掉非法访问后台的IP;对web服务器文件的请求进行文件预解析,对比解析的文件与原文件差异,存在差异的取源文件返回请求;
(6)做好集群或者数据库加密;
对于NT系统设置好文件夹权限,控制因操作失误所带来的损失;对于SQL 2005可以设置管理IP和数据库加密,切断数据库篡改的源头;
(7)加强培训
加强安全意识培训,操作合理化培训,从程序自身的源头遏制,从管理员自身的源头遏制。

你可能感兴趣的:(实现)