快速业务通道

最简单的几种攻击和防范方法

作者 佚名技术 来源 网络技术 浏览 发布时间 2012-05-24
本文介绍的攻击方法是为后面专门介绍相关内容做铺垫,读者在学习的时候应该多了解一些有关Perl和网站的知识,如果可能,最好在自己的系统中安装一套网站服务程序,然后寻找一些免费的Perl代码进行调试、研究。

  一、攻击免费论坛:

  这里介绍的攻击非常简单,它所达到的效果就是获得论坛管理员密码、具有修改论坛的权限等,所以并不设计漏洞扫描和清除痕迹等步骤。首先介绍一下问题的起源:在网络上很多网站都提供了论坛或者电子留言版,这些服务大多数使用asp、php、cgi或者perl编写完成,而对于这些免费的论坛代码黑客也能够获得,因此只要经过分析就可以找到“免费软件中的缺陷”,进而对网站上提供的论坛进行攻击。

  例如http://www.tougao.com/网站提供的“稿件管理系统”就存在一个很严重的问题(本人已经和他们联系并说明此漏洞、相关漏洞现已修复),让我们看看通过浏览器访问它的形式,当我们阅读其中的稿件时,会发现在URL内的地址是/list.asp?articleid=nnnn,显然list.asp是显示文章的程序,而后面的?articleid=nnnn则是它的参数,nnnn是文章的编号。当黑客申请成为tougao网站的一员后,便拥有了上传文章和修改、删除自己发表文章的权利,修改文章使用editarticleself.asp?articleid=nnnn,其中的nnnn应该是自己的文章代码,但是如果黑客将文章代码改变会怎么样呢?

  修改了文章代码后发现,可以对其他文章进行修改!也就是说任何经过免费注册成为tougao网站的用户都可以拥有修改任意文章的权利,同时使用delarticleself.asp则可以删除任何文章!

  一次攻击过程我已经叙述完了,是不是非常简单?其实像这种问题网络上随处可见,好好想一下,如果对nnnn的修改进行的更“不着边际”,例如输入几个英文字母或者标点符号会出现什么情况?经过尝试发现,当属的数值为“单引号”是,系统会出现错误并报告数据库文件的名称、磁盘物理路径等敏感信息,这样就可以直接通过下载软件将他们的数据库下载到本地并从中找到管理员账号。

  在早期的YukiBBS3000上,当注册者的注册信息内包含单引号时,也会出现“程序运行错误”的提示,并且造成论坛的内部数据错误,彻底终止论坛的正常运行。

  二、防范攻击:

  相对来说,网易、新浪等大型门户网站在这方面做的比较好,他们对文章ID号进行了判断,防止特殊字符的介入,如果使用者输入了非法的字符,经过检测系统会提示输入的ID号码非法,并且拒绝接受请求,返回一个“输入字符非法”的界面。

  另外对于文章的修改,他们也考虑的非常周到,在进行每一次文章修改的时候,系统都会检测用户身份,确定准备修改的文章是否属于登陆身份,如果不属于则会提出警告信息。而实际上,这种问题在早期他们的网站上也是存在的,只不过因管理员网络安全意识比较强,因此即使的发现并修补了漏洞。

  cgi、perl等程序在设计的时候,必须考虑到各种可能出现的情况,例如对文件名的提交必须考虑周到,一个程序没有考虑到的特殊名称也许会对系统造成非常严重的后果,用户输入一个文件名,有可能就试图打开输入危险字符串!例如用户输入的文件名中包含路径字符,如目录斜杠和双点!尽管你期望的是输入公用的文件名(例如report.txt),但结果却可能是/report.txt或../../report.txt等等,系统中所有文件就有可能泄露出去,后果是可想而知的。

  设计cgi、perl程序,最好能够在代码中加入下面的非常字符检测代码:

  if(($file_name=~/[^a-zA-Z_\.]/)  ($file_name=~/^\./))

  { #文件包含有不合法字符 }
另外还要注意对大于号、小于号的判断,因为这两种符号是html文档中的属性符号,不进行屏蔽会对论坛造成严重的后果,网络上不是有很多“小儿科”的聊天室踢人术吗?简单的方式是不允许小于号和大于号的出现,因为所有HTML语法必须包含在这两个字符间,如果程序检测到它们就返回一个错误提示,下面一行Perl代码快速地清除了这两个字符:

  $user_input=~s/<>//g;

  当然还有比较好的选择,就是将这两个字符转换成它们的HTML换码(特殊的代码),用于表示每个字符而不使用该字符本身。下面的代码通过全部用<替换了小于符号,用>替换了大于符号,从而完成了转换过程:

  $user_input=~s/
  $user_input=~s/>/ gt;/g;

[1] [2] [3] [4] [5] 下一页

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号