首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何调试在另一个进程(2.exe)下运行的进程(1.exe)?

调试在另一个进程(2.exe)下运行的进程(1.exe)通常需要使用远程调试工具。以下是一些常见的远程调试工具:

  1. Visual Studio
代码语言:txt
复制
Visual Studio 提供了强大的远程调试功能,可以远程调试在另一台计算机上运行的进程。要使用 Visual Studio 进行远程调试,请按照以下步骤操作:
代码语言:txt
复制
a. 在 Visual Studio 中打开解决方案。
代码语言:txt
复制
b. 在“解决方案资源管理器”中,右键单击要调试的项目,然后选择“属性”。
代码语言:txt
复制
c. 转到“调试”选项卡,然后在“要启动的调试器”下拉列表中选择“远程调试”。
代码语言:txt
复制
d. 在“计算机名称”字段中输入远程计算机的名称或 IP 地址。
代码语言:txt
复制
e. 确保远程计算机上的防火墙允许访问 Visual Studio 远程调试监视器。
代码语言:txt
复制
f. 在远程计算机上运行 Visual Studio 远程调试监视器。
代码语言:txt
复制
g. 在 Visual Studio 中开始调试会话。
  1. WinDbg
代码语言:txt
复制
WinDbg 是一款功能强大的调试工具,可以用于调试在远程计算机上运行的进程。要使用 WinDbg 进行远程调试,请按照以下步骤操作:
代码语言:txt
复制
a. 在远程计算机上安装 Debugging Tools for Windows。
代码语言:txt
复制
b. 在远程计算机上以管理员身份运行命令提示符,然后启动远程调试监听器:`windbg -server npipe:pipe=debug_pipe -d`
代码语言:txt
复制
c. 在本地计算机上运行 WinDbg,然后连接到远程调试监听器:`windbg -remote npipe:server=RemoteMachineName,pipe=debug_pipe`
代码语言:txt
复制
d. 在 WinDbg 中,使用 `g` 命令启动调试会话。
  1. Remote Debugging Protocol (RDP)
代码语言:txt
复制
RDP 是一种基于网络的远程调试技术,可以用于调试在远程计算机上运行的进程。要使用 RDP 进行远程调试,请按照以下步骤操作:
代码语言:txt
复制
a. 在远程计算机上安装 Debugging Tools for Windows。
代码语言:txt
复制
b. 在远程计算机上以管理员身份运行命令提示符,然后启动远程调试监听器:`rdbg -server npipe:pipe=debug_pipe -d`
代码语言:txt
复制
c. 在本地计算机上运行 Visual Studio 或 WinDbg,然后连接到远程调试监听器:`vsjitdebugger.exe -p<ProcessId>` 或 `windbg -remote npipe:server=RemoteMachineName,pipe=debug_pipe`
代码语言:txt
复制
d. 在 Visual Studio 或 WinDbg 中,使用 `g` 命令启动调试会话。
  1. ProcDump
代码语言:txt
复制
ProcDump 是一个命令行实用程序,可以用于在满足特定条件时生成进程转储。要使用 ProcDump 进行远程调试,请按照以下步骤操作:
代码语言:txt
复制
a. 在远程计算机上安装 Debugging Tools for Windows。
代码语言:txt
复制
b. 在远程计算机上运行 ProcDump,并使用 `-e` 选项指定要监视的进程 ID 或名称,使用 `-ma` 选项指定触发转储的内存阈值,使用 `-w` 选项指定写入转储文件的路径。
代码语言:txt
复制
c. 当进程达到指定的内存阈值时,ProcDump 将生成进程转储,可以使用 WinDbg 或其他调试工具进行分析。

通过以上方法,可以在远程计算机上调试在另一个进程(2.exe)下运行的进程(1.exe)。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

如何让Linux进程固定堆运行

我们知道程序每次运行时候地址都是不一样,linux之所以有这样设计也许是为了安全性考虑,不利于黑客攻击。...我们看一个简单程序: #include #include int main(int argc, char* argv[]) { int first...显然程序每次运行地址都不一样! 那么有没有办法让相同程序每次运行地址都一样呢? 看到这里你也许会问为什么让程序每次运行地址都一样,这不违背OS设计初衷了吗?...是的,这的确违背 linux 内核设计初衷。但是实际项目中难免不会遇到奇葩需求,比如有些app由于历史原因需要运行在指定地址上,那这时候就需要把地址空间随机化关掉。...废话少说,我们看下地址空间随机化关掉方法。

2K10

【Android 逆向】修改运行 Android 进程内存数据 ( Android 命令行中获取要调试应用进程 PID | 进程注入调试进程内存 so 库 )

文章目录 一、Android 命令行中获取要调试应用进程 PID 二、进程注入调试进程内存 so 库 一、Android 命令行中获取要调试应用进程 PID ---- 前置博客 【Android...逆向】修改运行 Android 进程内存数据 ( 运行环境搭建 Android 模拟器安装 | 拷贝 Android 平台可执行文件和动态库到 /data/system ) 先安装 Android...模拟器 , 雷电模拟器 3.75 版本 ; 模拟器中安装要调试应用后 , 直接运行 ; 执行 dumpsys activity top|grep pid 命令 , 查看当前正在运行应用进程号...PID 为 2328 ; 二、进程注入调试进程内存 so 库 ---- 【Android 逆向】修改运行 Android 进程内存数据 ( 运行环境搭建 Android 模拟器安装 | 拷贝.../tool 2328 命令 , 即可完成 进程 注入操作 ; 如果命令行输出 hook_entry_addr = 0xa36044e0 不为空 , 是一个实际地址 , 说明调试动态库注入成功 ; 完整命令行输出

68910

如何使用Vegile隐藏指定进程运行

关于Vegile Vegile是一款针对Linux系统设计和开发强大后渗透测试工具,该工具所提供后渗透利用技术可以确保广大研究人员保持一定程度访问权,并允许对目标可信网络执行更加深入渗透测试与安全分析...如果广大研究人员已经目标系统上部署好了后门之后,该工具将帮助我们进一步对后门/rootkit进行设置,并隐藏指定进程,而且不会在Metasploit中限制会话。...即使该工具被终止运行,它也会自动再次运行。...工具特性 1、支持使用reverse_shell后门; 2、支持msfvenom命令; 3、进程隐藏; 4、支持使用crontab和xinit.d实现后门持久化; 5、实现会话、后门、rootkit...v=oYyH1G3Lsvo】 隐藏后门/rootkit进程: 演示视频:【https://www.youtube.com/watch?

1.7K30

你下载软件可能携带STOP勒索病毒变种

通过调试,在内存中解密出PE,如下所示: ? 3. 然后加载到00400000内存位置,然后执行相应PE代码,如下图所示: ? 4....然后设置相应自启动项注册表项,如下所示: ? 7. 获取进程运行参数,如下所示: ? 然后设置相应启动参数,启动进程,如下所示: ? 相应代码,如下所示: ?...执行之后,再次判断程序运行参数,通过相应判断,调用参数,启动程序,进行勒索加密过程,如下所示: ? 8. 如果进程是按上面相应参数运行,父进程参数,如下所示: ?...相应恶意下载链接如下所示: http://bana911.ru/1.exe$run http://bana911.ru/2.exe$run http://bana911.ru/updatewin.exe...加密后文件,如下所示: ? 同时相应目录下生成_openme.txt勒索信息文本文件,如下所示: ?

92620

linux如何创建守护进程步骤

进程存在于内存当中,存在着 创建,调度,执行和消亡,进程号是进程唯一标志,每一个进程都有自己独立内存空间,32位操作系统中,进程拥有0-4G内存空间,其中0-3G属于用户,3G-4G属于内核,所以就出现了进程执行模式...2,进程类型:交互进程,批处理进程,守护进程 3,守护进程:Linux中后台服务进程,daemon进程 4,守护进程创建步骤: (1)创建子进程,父进程退出。...使用fork()函数,如果返回值大于0,表示为父进程,exit(0),父进程退出,子进程继续。 (2)进程中创建新会话,使当前进程成为新会话组组长。...使用setsid()函数,如果当前进程不是进程组长,则为当前进程创建一个新会话期,使当前进程成为这个会话组进程,成为这个进程组长。 (3)改变当前目录为根目录。...由于守护进程在后台运行,开始于系统开启,终止于系统关闭,所以要将其目录改为系统根目录下。进程执行时,其文件系统不能被卸下。 (4)重新设置文件权限掩码。

4.2K21

Linux查看进程启动和运行时间

有时需要知道某进程运行时间,比如我想知道我sra文件转换成fq格式转化速度。以便我做好时间安排。...:进程名 lstart:开始时间 etime:运行时间 运行结果如下: 91413 pts/0 root fastq-dump Tue May 21 10:01:44...I 5月09 0:00 [rcu_bh] USER:用户名 %CPU:进程占用CPU百分比 %MEM:占用内存百分比 VSZ:该进程使用虚拟內存量(KB) RSS:该进程占用固定內存量...(KB)(驻留中页数量) STAT:进程状态 START:该进程被触发启动时间 TIME:该进程实际使用CPU运行时间 top命令 top也可以看进程信息,与ps区别如下 ps看命令执行那刻进程信息...,top是持续监视,ctrl c退出 ps只是查看进程,而top还可以监视系统性能,如平均负载,cpu和内存消耗 总体来说, ps主要是查看进程,尤其你关心进程 top主要看cpu,内存使用情况

15.3K10

C# 将dll打包到程序中 ILMerge

本文告诉大家如何把 dll 打包到程序中。很多时候 软件 在运行时候需要包括很多 dll 或其他文件,这样软件在给其他小伙伴,就需要做一个压缩包,或者用安装软件。...这样感觉不太好,所以本文告诉大家一个方法,把所有的 dll 放在一个文件,于是把自己软件给小伙伴就只需要给他一个程序。...ILMerge 首先下载 ILMerge 然后安装,感觉安装很简单 假如有 1.exe 和 1.dll 准备把 1.dll 合并到 2.exe 那么可以使用下面代码 ilmerge /target:...exe /out:E:\2.exe /log E:\1.exe /log E:\1.dll /targetplatform:v4 这里 target 为目标平台 out 就是输出文件 log 就是准备合并...dll 执行代码就可以拿到 2.exe 直接把这个文件给小伙伴,他就不需要使用压缩包,直接打开 2.exe 就不会说找不到库。

1.4K10

如何在 Python 中终止 Windows 上运行进程

在这篇综合性文章中,我们将探讨各种方法来完成使用 Python 终止 Windows 上运行进程任务。...方法 2:利用强大“psutil”库 “psutil”库提供了一个强大跨平台库,用于访问系统信息和操作正在运行进程。...我们可以利用此模块来执行“taskkill”命令并有效地终止正在运行进程。...示例:利用“子流程”模块 在这种情况,我们将使用强大“子进程”模块演示记事本应用程序终止: import subprocess # The process name to be terminated...shell=True' 参数 Windows 命令外壳中执行命令时变得不可或缺。 结论 在这次深入探索中,我们阐明了使用 Python 终止 Windows 上运行进程三种不同方法。

41030

如何判断进程是在哪个容器中运行

某些情况,可能在宿主机上存在“看得到却摸不到”进程;有的时候容器太多,想知道进程具体是哪个容器运行?...我们来尝试: 首先在容器中test目录下运行sleep 10000 宿主机ps能看到对应进程 看对应proccwd,也确实和容器中路径一样,/test目录下,但是宿主机实际上并没有这个路径...大概率可以判断这个进程不是宿主机上,可以通过如下这个命令判断命令是否是容器中执行: ps -e -o pid,cmd,comm,cgroup 可以看到pid为29656cgroup是docker...或者cat对应进程cgroup也可以: cat /proc/xxxx/cgroup 和我们执行sleep命令容器一致: 因此可以得出结论,pid为29656进程 bf85501b3084601ba76b8cb303917134d58b5e7783c14c1636ff1c56a3d83c1f...容器里执行

4.9K30

【Android 逆向】修改运行 Android 进程内存数据 ( Android 系统中调试进程内存流程 | 编译内存调试动态库以及调试程序 )

文章目录 一、Android 系统中调试进程内存流程 二、编译内存调试动态库以及调试程序 三、博客资源 一、Android 系统中调试进程内存流程 ---- 修改游戏运行内存 , 游戏运行之后..., 游戏进程肯定有对应内存空间 ; 使用 注入工具 将 一个 libnative.so 动态库 , 注入到游戏运行进程对应内存中 , 注入成功后 , 在运行内存中就存在了该 libnative.so...动态库 ; libnative.so 动态库作用是 跨进程接收 外部 另外一个进程 cmd 指令 , cmd 会告知 libnative.so 动态库 , 要搜索以及修改内存细节 , 如要搜索什么特征内存..., 以及修改指定内存地址指定数据 ; 具体工作流程 : 通过 IDA 内存分析工具找到要修改代码特征 ; 使用 cmd 工具远程通知 注入到 被调试进程 libnative.so 动态库 ;...libnative.so 动态库 搜索 代码特征 , 并返回内存地址 ; 使用 cmd 工具向 libnative.so 动态库 发送修改 指定内存 指定 n 字节数据 ; 二、编译内存调试动态库以及调试程序

78610

Linux中查看所有正在运行进程方法

它能显示当前运行进程相关信息,包括进程PID。Linux和UNIX都支持ps命令,显示所有运行进程相关信息。 ps命令能提供一份当前进程快照。如果想状态可以自动刷新,可以使用top命令。...# ps -A # ps -e 任务:查看非root运行进程 # ps -U root -u root -N 任务:查看用户vivek运行进程 ps -u vivek 任务:top命令 top命令提供了运行中系统动态实时视图...命令提示行中输入top: # top 输出: image.png 按q退出,按h进入帮助。 任务:显示进程树状图。 pstree以树状显示正在运行进程。树根节点为pid或init。...pgrep能查找当前正在运行进程并列出符合条件进程ID。...输入下面的命令启动atop: 到此这篇关于Linux中查看所有正在运行进程方法文章就介绍到这了,更多相关Linux查看正在运行进程内容请搜索ZaLou.Cn以前文章或继续浏览下面的相关文章希望大家以后多多支持

40K42

南域剑盟文件捆绑器2010

//////////////////////////////////// 例: 第一个文件是1.jpg 第二个是2.exe, 捆绑后生成目标文件是3.exe 当第二个设置勾选[不释放,直接运行]那么...2.exe将在3.exe中运行 --------------------------------- 例: 第一个文件是1.jpg 第二个是2.exe, 捆绑后生成目标文件是3.exe 当第二个设置勾选...文件直接填写文件名,如在栏目中填写: cmd.exe,那么2.exe注入C:\WINDOWS\system32\cmd.exe中运行)。...//////////////////////////////////////// 1、第一个文件选1.exe, 选捆绑后生成目标文件名称是2.exe 2、[运行第一个文件设置]中勾选[不释放,直接运行...] 3、点[提取图标] 选1.exe, 使用1.exe图标 4、点击开始捆绑, 这样就等于为1.exe加上了一层外壳 //////////////////////////////////////

86930

Windows系统如何监视EasyNVR进程内存使用情况?

EasyNVR 开发过程中,突然有部分版本出现了内存居高不下情况,于是我们考虑是否能对内存进行监视,该需求要借助第三方工具来监视内存使用情况,Windows 下有默认性能监视器,比较实用,在此我们将介绍其具体用法...1、首先在命令行中输入 perfmon,运行完毕后出现主界面。 2、点击上方绿色加号,选中 Process 后面的 + 号。...选择 WorkingSet,选定对象实例中选择 EasyNVR,并点击添加。 3、右侧计数器中会添加对应计数器 4、点击确定,即可显示对应数据。...5、点击右键属性可以设置对应显示操作。 其中采样间隔和持续时间比较重要,图中最大可以显示 1000 个点,因此需要针对性设置。以上操作后,就可以长时间监视对应进程内存。

87810

C# 将dll打包到程序中

本文告诉大家如何把 dll 打包到程序中。很多时候 软件 在运行时候需要包括很多 dll 或其他文件,这样软件在给其他小伙伴,就需要做一个压缩包,或者用安装软件。...这样感觉不太好,所以本文告诉大家一个方法,把所有的 dll 放在一个文件,于是把自己软件给小伙伴就只需要给他一个程序。...ILMerge 首先下载 ILMerge 然后安装,感觉安装很简单 假如有 1.exe 和 1.dll 准备把 1.dll 合并到 2.exe 那么可以使用下面代码 ilmerge /target:...exe /out:E:\2.exe /log E:\1.exe /log E:\1.dll /targetplatform:v4 这里 target 为目标平台 out 就是输出文件 log 就是准备合并...dll 执行代码就可以拿到 2.exe 直接把这个文件给小伙伴,他就不需要使用压缩包,直接打开 2.exe 就不会说找不到库。

1.5K30

我们可以使用命令kill来结束Linux系统运行进程(kill强制杀死进程)

首先使用ps -ef命令确定要杀死进程PID,然后输入以下命令: # kill –pid 注释:标准kill命令通常都能达到目的。终止有问题进程,并把进程资源释放给系统。...然而,如果进程启动了子进程,只杀死父进程,子进程仍在运行,因此仍消耗资源。为了防止这些所谓“僵尸进程”,应确保杀死父进程之前,先杀死其所有的子进程。...确定要杀死进程PID或PPID # ps -ef | grep httpd 以优雅方式结束进程 # kill -l PID -l选项告诉kill命令用好像启动进程用户已注销方式结束进程。...其允许指定要终止进程名称,而非PID。 # killall httpd 停止和重启进程 有时候只想简单停止和重启进程。...如下: # kill -HUP PID 该命令让Linux和缓执行进程关闭,然后立即重启。配置应用程序时候,这个命令很方便,在对配置文件修改后需要重启进程时就可以执行此命令。

3K20

如何在Linux中查看所有正在运行进程

它能显示当前运行进程相关信息,包括进程PID。Linux和UNIX都支持ps命令,显示所有运行进程相关信息。ps命令能提供一份当前进程快照。如果你想状态可以自动刷新,可以使用top命令。...ps命令 输入下面的ps命令,显示所有运行进程: # ps aux | less 其中, -A:显示所有进程 a:显示终端中包括其它用户所有进程 x:显示无控制终端进程 任务:查看系统中每个进程...# ps -A # ps -e 任务:查看非root运行进程 # ps -U root -u root -N 任务:查看用户vivek运行进程 # ps -u vivek top命令 top命令提供了运行中系统动态实时视图...命令提示行中输入top: # top 输出: 图1:top命令:显示Linux任务 按q退出,按h进入帮助。 显示进程树状图 pstree以树状显示正在运行进程。树根节点为pid或init。...pgrep能查找当前正在运行进程并列出符合条件进程ID。例如显示firefox进程ID: $ pgrep firefox 下面命令将显示进程名为sshd、所有者为root进程

60.5K71
领券