当前位置: 首页 > 图文教程 > 服务器 > 安全防护 > Web服务器的安全和攻击防范 (五)

安全防护
如何正确预防网页中的5种“隐形杀手”
cpu散热技巧方法和六大误区
隐患起于灰尘!机箱内部风扇清理有妙招
电源常见故障判断分析与排除
主板常见故障分类及排除方法
绝杀病毒木马的好工具:ESET NOD32
三种方法解决IIS6目录检查漏洞
硬盘坏道故障实例解决
做好防范措施 让你的MP3拒绝病毒的入侵
彻底查杀网页病毒 断绝一切安全隐患
移动安全之手机病毒入侵的解决
中国PC用户个人上网十则网络安全指南
如何使tcp包和udp包穿透网络防火墙
细说iexplore.exe是进程还是病毒
如何用网络入侵检测系统防范黑客攻击
对Autorun.inf类U盘病毒的攻防经验总结
护花使者:远程修复MM的受损系统
绕过主动防御 木马病毒刺穿卡巴斯基
脚本图片类后门病毒的完美使用方法
QQ盗号木马USBINE.SYS暂时解决方法

安全防护 中的 Web服务器的安全和攻击防范 (五)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-29   浏览: 68 ::
收藏到网摘: n/a

伪造Web请求(二)

  注意b的值必须以URL编码格式输入。要将字符串进行URL编码,可以使用一个简单的PHP程序,例如:



kris@valiant:~/www < cat urlencode.php#! /home/kris/bin/php -q< ?php print urlencode($argv)."n";? >kris@valiant:~/www < ./urlencode.php "this is a test"this+is+a+test

  发送HTTP POST请求只是稍微复杂一点:现在应该在这个请求中包含一个合法的Content-Type头以及正确的内容长度字节数。下面是具体过程:



kris@valiant:~/www < telnet valiant 80Trying 193.102.57.3...Connected to valiant.koehntopp.de.Escape character is '^]'.POST /~kris/test.php HTTP/1.0Host: valiant.koehntopp.deReferer: http://www.attacker.com/die_sucker_die.htmlContent-Type: application/x-www-form-urlencodedContent-Length: 16b=this+is+a+testHTTP/1.1 200 OKDate: Sat, 08 Apr 2000 06:55:11 GMTServer: Apache/1.3.9 (Unix) (SuSE/Linux) PHP/4.0RC2-devmod_ssl/2.4.7 OpenSSL/0.9.4X-Powered-By: PHP/4.0RC2-devConnection: closeContent-Type: text/htmlThe value of b is this is a testThe value of HTTP_REFERER ishttp://www.attacker.com/die_sucker_die.htmlConnection closed by foreign host.

伪造Web请求(三)

  另外一种常见的错误是把内部应用的状态数据通过< INPUT TYPE="HIDDEN" >标记从一个页面传递到另一个页面。把内部应用的状态放到信任界限之外就如把应用的心脏挖出来放到了攻击者的面前。对于如此缺乏安全保障的应用,任何想要摧毁它的攻击者都可以轻易地引导该应用并得到任何想要的效果。应用的状态应该通过会话变量保存在服务器上,永远不应该跨越信任界限。所有的Web应用开发平台都有这种机制。例如在PHP3中,PHPLIB可用于保存会话数据,PHP4使用的是session_*()调用,ASP提供Session对象,Cold Fusion提供几种不同的会话变量。

  Web应用不应该把任何来自信任界线之外的数据直接保存为会话变量:会话变量是可信任的变量,不应该用来保存不可信任的数据。通常,来自外面的数据(比如表单变量的数据)应该先传入检验其合法性的函数。只有当检验函数表示表单提供的数据是安全的,才可以把表单数据复制到会话变量。Web应用应该把这种检查集中到一起进行,应用的所有其余部分永远不应该直接接触表单变量,而是应该使用经过检查且确认安全的会话数据。

  参考: