linux社区爱心援助Linux认证系列教程业界动态站务新闻公司招聘建议留言网址大全LPI专题CISCO专题
设为首页
加入收藏
管理团队
JSP  
JAVA  
PERL  
 您的位置:首页 > 开发语言 > php >
栏目导栏
  php
  JSP
  ASP
  asp.net
  JAVA
  c/c++/c#
  perl
  JavaScript
  Basic
  Delphi
资料搜索
热门文章
·PHP生成静态页面的一些经验
·PHP无限分类与树型论坛的实现方
·php5学习笔记
·入门级PHP程序员面试题
·PHP 和 MySQL初学入门
·PHP入门速成
·vim的代码折叠
·文件下载统计php编程代码
·如何建立自己的新闻发布系统
·织梦CMS中文转换拼音函数研究
·Windows下Apache+Tomcat+MySQL
·PHP初学者头疼问题总结
·Cookie及其使用详细介绍
·生成sessionid和随机密码的例子
·使用无限生命期Session的方法
最新文章
·PHP入门速成
·用php实现广告轮播
·Zend Optimizer 问题浅析
·功能强大的CGI语言----PHP3
·用Session对Web页面进行保护
·PHP--进行模块化设计
·如何将PHP的结果输出到非PHP页
·如何开发一个虚拟域名系统
·PHP4调用自己编写的COM组件
·简单的页面缓冲技术(三)
·简单的页面缓冲技术(二)
·简单的页面缓冲技术(一)
·用Socket发送电子邮件(二)
·用Socket发送电子邮件(一)
·PHP/MySQL 购物车
Google
 
PHP实现自动刷数和“灌水”机
[ 作者:  加入时间:2007-12-03 16:00:21  来自:Linux联盟收集整理 ]
今天无意间看到一个网站,它的计数器能够在静态页里更新,我想,应该是使用js来做的,打开源代码一看,果然是: fuqLinux联盟
   fuqLinux联盟
  <div align=center><SPAN class=Article_tdbgall> fuqLinux联盟
  作者:未知 文章来源:Meidi.Net fuqLinux联盟
  点击数: fuqLinux联盟
  <script language=’javascript’ src=’/Article/GetHits.asp?ArticleID=759’></script> fuqLinux联盟
  更新时间:2005-5-27</SPAN> fuqLinux联盟
  </div> fuqLinux联盟
   fuqLinux联盟
    点击数后面是一个asp文件去处理的,那么我打开这个文件看看: fuqLinux联盟
   fuqLinux联盟
  document.write(’210’); fuqLinux联盟
   fuqLinux联盟
    是吧,就是GetHists.asp文件处理ArticleID后提取结果后输出次数:document.write(’次数’),再静态页里就能够直接引用了。 fuqLinux联盟
   fuqLinux联盟
    坏人终究是坏人,那么我就想,如何能够迅速提升点击数呢?手工刷新的话不是很类,恩,赶紧写个PHP程序来自动的去访问这个文件。 fuqLinux联盟
   fuqLinux联盟
    PHP代码如下: fuqLinux联盟
   fuqLinux联盟
  <?php fuqLinux联盟
  /* access_url.php */ fuqLinux联盟
  define(SUM, 1000); //需要访问的次数 fuqLinux联盟
  define(L_TIME, 1000); //强制脚本执行的时间 fuqLinux联盟
  define(2005-10-4, 1); //每次访问之间休眠的时间 fuqLinux联盟
  $url = "http://www.xxx.com/Article/GetHits.asp?ArticleID=759"; //需要访问的地址 fuqLinux联盟
  set_time_limit(L_TIME); fuqLinux联盟
   fuqLinux联盟
  //访问指定URL函数knowsky.com fuqLinux联盟
  function access_url($url) fuqLinux联盟
  { fuqLinux联盟
   if ($url==’’) return false; fuqLinux联盟
   $fp = fopen($url, ’r’) or exit(’Open url faild!’); fuqLinux联盟
   if ($fp) { fuqLinux联盟
    while (!feof($fp)) { fuqLinux联盟
     $file = fgets($fp); fuqLinux联盟
     echo $file."\n<p> </p>\n"; fuqLinux联盟
    } fuqLinux联盟
    unset($file); fuqLinux联盟
   } fuqLinux联盟
  } fuqLinux联盟
   fuqLinux联盟
  //进行测试 fuqLinux联盟
  for ($i=0; $i<SUM; $i++) { fuqLinux联盟
   access_url($url); fuqLinux联盟
   sleep(2005-10-4); fuqLinux联盟
  } fuqLinux联盟
  ?> fuqLinux联盟
   fuqLinux联盟
    运行上面的程序,那么就会连续访问指定的URL地址,那么自然这个访问次数就会连续增加,达到灌水的效果。如果是流量大,而且用多程序去运行的话,那么很容易就会达到拒绝服务(DoS)的效果了。如果对方的防范措施,把代码修改一下针对论坛进行提交,很容易实现论坛灌水的效果。 fuqLinux联盟
   fuqLinux联盟
    防范方法: fuqLinux联盟
   fuqLinux联盟
    1. 代码中使用Session机制,当用户提交的时候生成一个Session ID,提交内容的时候判断是否已经提交,如果已提交那么就不允许刷。 fuqLinux联盟
   fuqLinux联盟
    2. 当用户提交以后记录用户的IP地址,如果指定时间内再提交的话就不允许再提交。 fuqLinux联盟
   fuqLinux联盟
    3. 当用户提交内容以后,在用户客户端写入Cookie,如果用户再次提交先检查客户端是否有Cookie来确定是否允许提交。 fuqLinux联盟
   fuqLinux联盟
    还有很多其他方法,可以去搜索一下,或者发挥自己的想象力,做的更好。 fuqLinux联盟
Linux联盟收集整理 ,转贴请标明原始链接,如有任何疑问欢迎来本站Linux论坛讨论
评论】【加入收藏夹】【 】【打印】【关闭
※ 相关链接
 ·PHP实现网页自动更新块  (2007-12-03 15:59:55)
 ·用PHP读写NTFS文件系统下的文件摘要信息  (2007-12-03 15:57:11)
 ·PHP中通过Web执行C/C++应用程序  (2007-12-03 15:55:58)
 ·PHP下实现端口复用/劫持  (2007-12-03 15:54:52)
 ·PHP和JAVA的XML-RPC中文问题解决办法  (2007-12-03 15:54:04)
 ·使用php的zlib压缩和解压缩swf文件  (2007-11-29 07:29:43)
 ·使用php通过Socket进行发信源码,支持发信认证  (2007-11-28 14:52:50)
 ·PHP巧获服务器端信息  (2007-11-28 14:52:03)
 ·使用"函数递归"实现基于php和MySQL的动态树型菜单  (2007-11-28 14:50:37)
 ·用PHP实现XML备份Mysql数据库  (2007-11-28 14:50:09)