最近看到一个trojan把自己拷到回收站里隐藏,然后发现我两万年前写的ark取得的进程路径还是原路径。。。

突然想起来很久以前看到某群的讨论

拿破伦19:22:03

话说,一个运行中的文件,然后移动他到其他目录~~

拿破伦19:22:33

有些检测他的路径会变成新的目录

KKindOf 19:23:05

丫的,这是面试题吧

DRL不爱天使 19:23:06

DRL不爱天使 19:23:32

你说的是Win7么

拿破伦 19:23:43

恩啊

DRL不爱天使 19:23:59

XP就不会

拿破伦 19:24:16

我在g盘根目录下运行的

DRL不爱天使 19:24:50

7的文件管理很优越

拿破伦 19:24:53

为啥win7可以了

拿破伦 19:25:06

这个能用来干坏事不

拿破伦 19:25:16

移动一个被占用的文件感觉。。。

DRL不爱天使 19:25:36

不知道 我是好人

DRL不爱天使 19:25:40

拿破伦 19:26:30

是啊,移动不会提示被占用。。。这个没想通

KKindOf 19:27:00

干啥,如果独占的就不能移动了

拿破伦 19:27:28

这个是程序打开,不知道怎么设置独占啊

KKindOf 19:35:10

你就是说运行了后,然后就移动,这样别人扫描进程列表就扫不出正确的路径?

拿破伦 19:35:21

宁妖01 19:35:34

拿破伦 19:35:35

启动是的路径不对了

=======================================================================================================

其实xp和win7下都是可以的,已经跑起来的进程,他的可执行文件只要在当前盘符下,随便移动。移动之后任务管理器可能会得不到进程已经变更的可执行文件名。

进程的文件名更改之后 eprocess的UCHAR ImageFileName[16];不会更新。SE_AUDIT_PROCESS_CREATION_INFO SeAuditProcessCreationInfo;也不会主动更新

网上比较多的代码是找 eprocess → SectionObject. _SEGMENT_OBJECT →_SEGMENT→_CONTROL_AREA→_FILE_OBJECT

然后从 _FILE_OBJECT的filename结合RtlVolumeDeviceToDosName去取路径

一般情况下是ok的。但当进程运行起来之后,如果对镜像文件重命名,这时候再从_FILE_OBJECT的filename去取路径就只有原路径了

得到更改后路径的方法是得到FILE_OBJECT之后去调ObQueryNameString,(也可以自己实现ObQueryNameString,直接发irp)

详见NtQueryInformationProcess的实现

阅读全文
类别:内核 查看评论

转载于:https://www.cnblogs.com/retme/archive/2012/05/02/2494886.html

关于ark取得进程的镜像文件路径相关推荐

  1. VC下通过进程ID获取进程镜像文件路径的方法及其存在的缺陷

    工作中经常会遇到通过进程ID获取进程镜像文件或者其他模块的路径的需求.(转载请指明出处)网上关于方案大致存在两种方案: OpenProcess->GetModuleFileName OpenPr ...

  2. 服务器虚拟机怎么选择iso文件位置,Hyper-V 虚拟机的光盘镜像文件路径 (.ISO) 不支持网络映射盘符或 UNC 路径?...

    在 Windows Server 2016 中使用 Hyper-V 建立新虚拟机,选择安装系统的镜像文件所在路径时,如果是用网络映射盘符或 UNC 路径,建立虚拟光驱会失败.提示: [Window T ...

  3. Linux获取执行文件路径,如何 获取linux进程的执行文件路径

    进入/proc目录 ps查看所有契合 ./cmd的进程,找出其对应的进程号 用ll命令: ll 进程号 如下显示一个示例: [root@Cluster1 proc]# ll 22401 total 0 ...

  4. Linux通过进程ID查看文件路径

    1.用ps -ef |grep xxxxx 得到该进程的pid 2.输入ls -l ,结果中 exe链接对应的就是可执行文件的路径 $ ls -l /proc/18283 以下是/proc目录中进程1 ...

  5. linux进程获取执行文件路径,如何 获取linux进程的执行文件路径

    进入/proc目录 ps查看所有契合 ./cmd的进程,找出其对应的进程号 用ll命令: ll 进程号 如下显示一个示例: [root@Cluster1 proc]# ll 22401 total 0 ...

  6. Centos6.5 U盘安装找不到镜像文件的几个问题

    按照网上说的教程把iso镜像写到U盘后安装,仍然时不是会有不少问题,特此记录 格式问题 制作启动盘的U盘格式化时不要选择NTFS格式,否则在进入安装页面,要查找镜像文件路径时,会无法识别. 设备路径问 ...

  7. 用dd命令 制作ISO镜像文件到U盘

    在linux里可以利用dd命令制作iso镜像的安装盘 sudo dd if=镜像文件路径 of=usb设备路径 bs=1M status=progress 镜像文件路径:iso格式的文件存放的位置 u ...

  8. 简单介绍Linux进程文件路径的获取方法

    Linux进程文件路径在哪里才能找得到呢,有时会让Linux系统管理员费些心思,这里小编说一个简单的案例,相信会让不少管理员有所收获,帮助轻松获得想要的Linux进程文件路径,完成指定任务. 进入/p ...

  9. Android Studio 配置虚拟设备的镜像文件的存放路径

    操作系统:Windows 10 x64 IDE:Android Studio 3.3 Android Studio创建的虚拟设备的默认存放路径是位于C盘,这导致C盘的可用容量变小. 所以,我决定要将虚 ...

最新文章

  1. ajax核心代码提交,ajax表单在Asp.net核心提交后的RedirectToAction
  2. oracle 11g函数包缓存,Oracle11新特性——PLSQL函数缓存结果(一)
  3. maven学习笔记第一节一-maven install 模块之间相互引用
  4. 一天一种设计模式之三-----单例模式
  5. 计算机图形学实验一直线-DDA算法
  6. 统计数组中英文大写字母,小写字母,数字,空格的个数。
  7. 为企业微信“服务商应用”更改微信插件中的消息弹出样式
  8. latex中文简易模板,课程论文使用
  9. 【深度学习】使用tensorflow实现AlexNet
  10. 【CF917E】Upside Down(哈希二分)(后缀数组)(AC自动机)
  11. LSDyna在土木工程静力问题中的应用
  12. 七年级计算机考试知识点,七年级语文重点笔记 必考知识
  13. [转] 心中永远是晴天
  14. 计算机进位制及其规则,进位计数制及其转换方法过程详解
  15. 做北京linux培训哪家好?
  16. java 视频 解码_关于视频解码总结--JavaCV
  17. Unity3D游戏编程-鼠标打飞碟
  18. 获得CCNA和CCNP及CCIE认证的必备条件和有效期绍
  19. 【Codecs系列】MPEG4解码器可以解码H.263的码流吗?
  20. CAD二次开发发送命名 带objectId、导出igs格式

热门文章

  1. js map 箭头_JS异常函数之箭头函数
  2. 015-图片文件上传
  3. mysql 创建用户 %_mysql-创建用户和授权
  4. python中字典的value可以为任意对象_Python学习入门(13)—字典
  5. Android应用坐标系统全面详解
  6. Windows 上搭建FTP服务器
  7. mongo备份索引_【MongoDB学习之四】索引 聚合 备份与恢复 监控
  8. SpringBoot自动装载
  9. 武汉大学计算机学院 曹老师,关于校园网吧建设的计算机网络综合设计.doc
  10. vim无法保存退出_180万程序员不知如何退出Vim编辑器...