场景 应急响应中从进程发现被注入了EXE文件,通过processhacker的Memory模块dump出来注入的文件.PE修复后在IDA里反汇编查看这个恶意代码的功能是什么. 解决 LordPE 虚拟内存对齐修复 [Section Table] 每个区段的 VirtualAddress与RawOffset对齐 VirtualSize与RawSize对齐 [Basic PE Header Information] 修复exe加载基地址和dump的内存地址 相关示例 LoadPE载入dump后的程序…
原文地址:http://www.javatang.com JVM Heap Dump(堆转储文件)的生成 正如Thread Dump文件记录了当时JVM中线程运行的情况一样,Heap Dump记录了JVM中堆内存运行的情况.可以通过以下几种方式生成Heap Dump文件: 使用 jmap 命令生成 jmap 命令是JDK提供的用于生成堆内存信息的工具,可以执行下面的命令生成Heap Dump: jmap -dump:live,format=b,file=heap-dump.bin <pid>…
PHP进程通信基础--信号量+共享内存通信 由于进程之间谁先执行并不确定,这取决于内核的进程调度算法,其中比较复杂.由此有可能多进程在相同的时间内同时访问共享内存,从而造成不可预料的错误.信号量这个名字起的令人莫名其妙,但是看其英文原意,就十分容易理解. semaphore 英[ˈseməfɔ:(r)] vt. 发出信号,打旗语; 类似于指挥官的作用. 下面我们看下一个伪代码信号量的使用. 1.创建信号量唯一标识符$ftok = ftok(__FILE__, 'a');2.创建信号量资源ID$s…
共享内存是由内核出于在多个进程间交换信息的目的而留出的一块内存区(段). 如果段的权限设置恰当,每个要访问该段内存的进程都可以把它映像到自己的私有地址空间中. 如果一个进程更新了段中的数据,其他进程也立即会看到更新. 由一个进程创建的段,也可以由另一个进程读写. 每个进程都把它自己对共享内存的映像放入自己的地址空间. 创建共享内存区 int shmget(key_t key,size_t size,int shm-flg); 参数key既可以是IPC_PRIVATE(IPC_PRIVATE表示让…
小白一枚,如有不对,请各位大神多多指教! 最近看了看win32进程间通讯.简单写了写利用共享内存实现进程间通讯 使用共享内存实现进程间通讯: 1.在WM_CREATE消息下创建文件映射内核对象 hMapFile = CreateFileMapping(INVALID_HANDLE_VALUE, NULL, PAGE_READWRITE, , BUF_SIZE, (LPCWSTR)szName); 2.在需要进行数据共享的地方映射缓存区视图,将要写入的数据放入pbuf pBuf = (char *…
Pmap 提供了进程的内存映射,pmap命令用于显示一个或多个进程的内存状态.其报告进程的地址空间和内存状态信息.Pmap实际上是一个Sun OS上的命令,linux仅支持其有限的功能.但是它还是对查看完整的进程地址空间很有帮助.我们需要PID或者运行的进程的唯一进程ID来查看进程内存状态,我们可以通过/proc或者常规命令比如top或ps得到它. 语法或用法 #pmap PID 或者 #pmap [options] PID 在输出中它显示全部的地址,kbytes,mode还有mapping.…
linux下获取占用CPU资源最多的10个进程,可以使用如下命令组合: ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head linux下获取占用内存资源最多的10个进程,可以使用如下命令组合: ps aux|head -1;ps aux|grep -v PID|sort -rn -k +4|head 命令组合解析(针对CPU的,MEN也同样道理): ps aux|head -1;ps aux|grep -v PID|sort -rn -k…
主要内容:函数返回指针注意事项<悬空指针>.查看进程能够分配的内存大小 #include <stdio.h> char * favorite_fruit() { static char fruit[] = "apple"; // 不加static的话这个函数还回的指针会悬空,由于在函数退出时fruit组数被销毁 // 加了static后fruit数组分配在数据段里,而不是堆栈中.生命期和程序一样长,函数退出时变量 // 依旧有效 return fruit; }…
今天学习了相关于IPC(InterProcess Communication ,进程间通信)的相关知识.就做个笔记,一来让大家检查一下我的理解方面是不是有错误,二来也为了能让更多的博友们了解到相关的知识吧. IPC的种类 IPC 的种类,一般来说下面两种使用的较多: - 共享"内存" - 消息传递 下来我们就分别的介绍一下相关的信息吧. 共享内存 字面意思的理解是采用共享一块计算机中的内存空间来实现的进程之间的通信的一种方式.也就是说这块内存区域驻留在生成共享内存段进程的地址空间.(是…
1 管道(了解) from multiprocessing import Pipe con1,con2 = Pipe() 管道是不安全的. 管道是用于多进程之间通信的一种方式. 如果在单进程中使用管道,那么就是con1收数据,就是con2发数据. 如果是con1发数据,就是con2收数据 如果在多进程中使用管道,那么就必须是父进程使用con1收,子进程就必须使用con2发 父进程使用con1发,子进程就必须使用con2收 父进程使用con2收,子进程就必须使用con1发 父进程使用con2发,子…