首页
社区
课程
招聘
[旧帖] 如何通过修改程序,让一个程序以指定参数启动? 0.00雪花
发表于: 2011-11-15 21:30 10765

[旧帖] 如何通过修改程序,让一个程序以指定参数启动? 0.00雪花

2011-11-15 21:30
10765
如何通过修改程序,让一个程序以指定参数启动?
例如
运行 IE  
"C:\Program Files\Internet Explorer\iexplore.exe" www.baidu.com
参数是 www.baidu.com

如何修改   iexplore.exe 的程序文件  让其不接受参数的时候也是 按照这个参数启动呢?
有没有什么软件或者工具可以实现这个?

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (12)
雪    币: 100
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
tjk
2
编写程序 修改注册表  百度一下就知道了  具体函数
2011-11-15 21:49
0
雪    币: 18
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
"C:\Program Files\internet explorer\iexplore.exe" "%1"
2011-11-15 22:59
0
雪    币: 180
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
我本来以为我说的很明白了,没想到大家还没理解。
我的意思是,只修改iexplore.exe这个程序,就可以实现这个功能,不通过命令行,快捷方式,注册表等方法传入参数
2011-11-16 09:04
0
雪    币: 161
活跃值: (27)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
gog
5
给程序加一个节,将OEP改为新节,在新结中修改PEB里的commandline 的值增加指定参数,再跳转到原OEP
0:000> dt -r _peb 7ffd7000
ntdll!_PEB
   +0x000 InheritedAddressSpace : 0 ''
   +0x001 ReadImageFileExecOptions : 0 ''
   +0x002 BeingDebugged    : 0x1 ''
   +0x003 SpareBool        : 0 ''
   +0x004 Mutant           : 0xffffffff 
   +0x008 ImageBaseAddress : 0x01000000 
   +0x00c Ldr              : 0x001a1ea0 _PEB_LDR_DATA
      +0x000 Length           : 0x28
      +0x004 Initialized      : 0x1 ''
      +0x008 SsHandle         : (null) 
      +0x00c InLoadOrderModuleList : _LIST_ENTRY [ 0x1a1ee0 - 0x1a2910 ]
         +0x000 Flink            : 0x001a1ee0 _LIST_ENTRY [ 0x1a1f48 - 0x1a1eac ]
         +0x004 Blink            : 0x001a2910 _LIST_ENTRY [ 0x1a1eac - 0x1a2848 ]
      +0x014 InMemoryOrderModuleList : _LIST_ENTRY [ 0x1a1ee8 - 0x1a2918 ]
         +0x000 Flink            : 0x001a1ee8 _LIST_ENTRY [ 0x1a1f50 - 0x1a1eb4 ]
         +0x004 Blink            : 0x001a2918 _LIST_ENTRY [ 0x1a1eb4 - 0x1a2850 ]
      +0x01c InInitializationOrderModuleList : _LIST_ENTRY [ 0x1a1f58 - 0x1a2920 ]
         +0x000 Flink            : 0x001a1f58 _LIST_ENTRY [ 0x1a2020 - 0x1a1ebc ]
         +0x004 Blink            : 0x001a2920 _LIST_ENTRY [ 0x1a1ebc - 0x1a20e8 ]
      +0x024 EntryInProgress  : (null) 
   +0x010 ProcessParameters : 0x00020000 _RTL_USER_PROCESS_PARAMETERS
      +0x000 MaximumLength    : 0x1000
      +0x004 Length           : 0xa54
      +0x008 Flags            : 0x2001
      +0x00c DebugFlags       : 0
      +0x010 ConsoleHandle    : (null) 
      +0x014 ConsoleFlags     : 0
      +0x018 StandardInput    : (null) 
      +0x01c StandardOutput   : 0x00010001 
      +0x020 StandardError    : (null) 
      +0x024 CurrentDirectory : _CURDIR
         +0x000 DosPath          : _UNICODE_STRING "C:\WinDDK\7600.16385.0\Debuggers\"
         +0x008 Handle           : 0x000003a8 
      +0x030 DllPath          : _UNICODE_STRING "c:\windows;C:\WINDOWS\system32;C:\WINDOWS\system;C:\WINDOWS;.;C:\WinDDK\7600.16385.0\Debuggers\winext\arcade;C:\Program Files\NVIDIA Corporation\PhysX\Common;D:\Program Files\Windows Resource Kits\Tools\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\Microsoft SQL Server\90\Tools\binn\;D:\常用工具\SysinternalsSuite;c:\Program Files\Java\jdk1.7.0\bin;c:\Program Files\Java\jdk1.7.0\jre\bin;D:\tools\ppreleasesoft;D:\Program Files\TortoiseSVN\bin;d:\Program Files\Lua\5.1;d:\Program Files\Lua\5.1\clibs;C:\WinDDK;D:\code\VC Project\PP解决方案\masm32\BIN;C:\Program Files\Vim\vim72;D:\tools\SysinternalsSuite;d:\tools"
         +0x000 Length           : 0x4f4
         +0x002 MaximumLength    : 0x4f6
         +0x004 Buffer           : 0x00020498  "c:\windows;C:\WINDOWS\system32;C:\WINDOWS\system;C:\WINDOWS;.;C:\WinDDK\7600.16385.0\Debuggers\winext\arcade;C:\Program Files\NVIDIA Corporation\PhysX\Common;D:\Program Files\Windows Resource Kits\Tools\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\Microsoft SQL Server\90\Tools\binn\;D:\常用工具\SysinternalsSuite;c:\Program Files\Java\jdk1.7.0\bin;c:\Program Files\Java\jdk1.7.0\jre\bin;D:\tools\ppreleasesoft;D:\Program Files\TortoiseSVN\bin;d:\Program Files\Lua\5.1;d:\Program Files\Lua\5.1\clibs;C:\WinDDK;D:\code\VC Project\PP解决方案\masm32\BIN;C:\Program Files\Vim\vim72;D:\tools\SysinternalsSuite;d:\tools"
      +0x038 ImagePathName    : _UNICODE_STRING "c:\windows\NOTEPAD.EXE"
         +0x000 Length           : 0x2c
         +0x002 MaximumLength    : 0x2e
         +0x004 Buffer           : 0x00020990  "c:\windows\NOTEPAD.EXE"
[COLOR="Red"]      +0x040 CommandLine      : _UNICODE_STRING "c:\windows\NOTEPAD.EXE abc.txt"
         +0x000 Length           : 0x3c
         +0x002 MaximumLength    : 0x3e
         +0x004 Buffer           : 0x000209c0  "c:\windows\NOTEPAD.EXE abc.txt"[/COLOR]
2011-11-16 10:44
0
雪    币: 23
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
楼上好牛呢!!学习
2011-11-16 11:40
0
雪    币: 268
活跃值: (28)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
非常感谢楼上的楼上。、
2011-11-16 12:32
0
雪    币: 36
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
学习一下先.
2011-11-16 14:51
0
雪    币: 36
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
5楼是用什么工具软件修改的啊. 看着很想试一下,但不知道怎么下手啊. 偶是新手啊.有人提示一下吗.
2011-11-16 14:54
0
雪    币: 100
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
回答的很好回答的很好
2011-11-16 15:28
0
雪    币: 1121
活跃值: (707)
能力值: ( LV5,RANK:66 )
在线值:
发帖
回帖
粉丝
11
5楼的行为很像一个感染型病毒,其实没必要那么麻烦。逆一下,找到判断参数的位置,如果参数为空,就赋个指定的值就行了。要代码和字符串可以找代码段中的空地,然后找相应的位置跳过来,执行完了再跳回去。
2011-11-16 17:31
0
雪    币: 180
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
请问用什么工具?
2011-11-29 18:28
0
雪    币: 188
活跃值: (85)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
13
windbg + ultraedit
2011-11-29 19:16
0
游客
登录 | 注册 方可回帖
返回
//