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

红队技巧--通过内存PE执行绕过AV

然后就会被Windows Defender检测到,并可以通过时间查看查看 ? 然后我们就可以发现,我们被“HackTool:Win64/Meterpreter.A!dll”所拦截。...很明显我们不能在磁盘运行恶意文件获取会话,那么我们选择以内存的方式运行文件。...具体思路: 加密恶意软件并将其存储在内存 解析DOS标头& 重新创建导入地址表 获取并跳转到新的入口点 加密方式我们选择多层的XOR,下面是对代码进行加密的代码: for (i = 0; i <...PIMAGE_IMPORT_DESCRIPTOR 这用于访问包含导入地址表(用于查找DLL的内存地址的查询表,当调用其他库的函数时可以使用的信息)信息的结构。我们将使用它来获取名称。...都设置在内存,就可以执行它了!

73920

如何查看服务器配置:核数和内存

1、查看CPU核数 cat /proc/cpuinfo |grep 'process' |sort |uniq |wc -l 1、cpu信息记录在/proc/cpuinfo 2、Linux的Top...缓存: 32K L2 缓存: 4096K NUMA 节点0 CPU: 0-7 1.2)通过top监视CPU的情况 top top 命令是监视 Linux 实时系统进程的基本命令之一...2、查看内存总容量 # /proc/meminfo统计的是系统全局的内存使用状况 cat /proc/meminfo # MemTotal: 总的物理内存,需要转换一下 # MemFree: 空闲内存...,表示系统尚未使用的内存 2.1)通过free来显示内存的使用情况 free free -m free -g # 默认不加参数就是以 KB 为单位显示结果, # 可以加-m,显示内存总量,以...MB 为单位显示结果, # 可以加-g,显示内存总量,以 GB 为单位显示结果。

12.5K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    2.1 PE结构:文件映射进内存

    PE结构是Windows系统下最常用的可执行文件格式,理解PE文件格式不仅可以理解操作系统的加载流程,还可以更好的理解操作系统对进程和内存相关的管理知识,在任何一款操作系统,可执行程序在被装入内存之前都是以文件的形式存放在磁盘的...,也就是至今还在使用的PE格式,PE文件的基本结构如下图所示:图片在PE文件,代码,已初始化的数据,资源和重定位信息等数据被按照属性分类放到不同的Section(节区/或简称为节),而每个节区的属性和位置等信息用一个...在PE文件中将同样属性的数据分类放在一起是为了统一描述这些数据装入内存后的页面属性,由于数据是按照属性在节中放置的,不同用途但是属性相同的数据可能被放在同一个节PE文件头被放置在节和节表的前面,上面介绍的是真正的...在解析PE文件之前,我们首先要做的则是将PE文件从磁盘读入到内存,有两种方式可以实现,一种是通过ReadFile函数将完整的数据读入内存,该方法会消耗更多的内存资源这里并不推荐使用,第二种方式则是采用映射的模式...该函数返回一个指向映射内存的指针,我们可以使用它来读取或修改映射内存的数据。

    25210

    2.1 PE结构:文件映射进内存

    PE结构是Windows系统下最常用的可执行文件格式,理解PE文件格式不仅可以理解操作系统的加载流程,还可以更好的理解操作系统对进程和内存相关的管理知识,在任何一款操作系统,可执行程序在被装入内存之前都是以文件的形式存放在磁盘的...,也就是至今还在使用的PE格式,PE文件的基本结构如下图所示: 在PE文件,代码,已初始化的数据,资源和重定位信息等数据被按照属性分类放到不同的Section(节区/或简称为节),而每个节区的属性和位置等信息用一个...在PE文件中将同样属性的数据分类放在一起是为了统一描述这些数据装入内存后的页面属性,由于数据是按照属性在节中放置的,不同用途但是属性相同的数据可能被放在同一个节PE文件头被放置在节和节表的前面,上面介绍的是真正的...在解析PE文件之前,我们首先要做的则是将PE文件从磁盘读入到内存,有两种方式可以实现,一种是通过ReadFile函数将完整的数据读入内存,该方法会消耗更多的内存资源这里并不推荐使用,第二种方式则是采用映射的模式...该函数返回一个指向映射内存的指针,我们可以使用它来读取或修改映射内存的数据。

    25120

    2.1 PE结构:文件映射进内存

    PE结构是Windows系统下最常用的可执行文件格式,理解PE文件格式不仅可以理解操作系统的加载流程,还可以更好的理解操作系统对进程和内存相关的管理知识,在任何一款操作系统,可执行程序在被装入内存之前都是以文件的形式存放在磁盘的...,也就是至今还在使用的PE格式,PE文件的基本结构如下图所示: 在PE文件,代码,已初始化的数据,资源和重定位信息等数据被按照属性分类放到不同的Section(节区/或简称为节),而每个节区的属性和位置等信息用一个...在PE文件中将同样属性的数据分类放在一起是为了统一描述这些数据装入内存后的页面属性,由于数据是按照属性在节中放置的,不同用途但是属性相同的数据可能被放在同一个节PE文件头被放置在节和节表的前面,上面介绍的是真正的...在解析PE文件之前,我们首先要做的则是将PE文件从磁盘读入到内存,有两种方式可以实现,一种是通过ReadFile函数将完整的数据读入内存,该方法会消耗更多的内存资源这里并不推荐使用,第二种方式则是采用映射的模式...该函数返回一个指向映射内存的指针,我们可以使用它来读取或修改映射内存的数据。

    41040

    Linux查看进程占用内存的情况

    Linux查看某个进程占用内存的情况,执行如下命令即可,将其中的[pid]替换成相应进程的PID号: cat /proc/[pid]/status 说明 /proc/[pid]/status中所保存的信息除了内存信息...,还包括进程IDs、信号等信息,此处暂时只介绍内存相关的信息。...字段 说明 VmPeak 进程所使用的虚拟内存的峰值 VmSize 进程当前使用的虚拟内存的大小 VmLck 已经锁住的物理内存的大小(锁住的物理内存不能交换到硬盘) VmHWM 进程所使用的物理内存的峰值...VmRSS 进程当前使用的物理内存的大小 VmData 进程占用的数据段大小 VmStk 进程占用的栈大小 VmExe 进程占用的代码段大小(不包括库) VmLib 进程所加载的动态库所占用的内存大小...(可能与其它进程共享) VmPTE 进程占用的页表大小(交换表项数量) VmSwap 进程所使用的交换区的大小 举例 显示进程cron的内存信息,通过pidof cron获取进程ID,或者通过ps -

    8.3K10

    PE格式:导入表与IAT内存修正

    本章教程,使用的工具是上次制作的PE结构解析器,如果还不会使用请先看前一篇文章对该工具的介绍,本章节内容主要复习导入表结构的基础知识点,并通过前面编写的一些小案例,实现对内存的转储与导入表的脱壳修复等...解析 IMAGE_IMPORT_DESCRIPTOR 数据目录表第二个成员指向输入表,该指针在PE开头位置向下偏移80H处,PE开始位置就是B0H , B0H+80H= 130H处。...此处存放着一个指针,00002040 即输入表在内存的偏移量为 2040,使用前面制作的工具可以快速定位到此处。...当程序被运行前,它的FirstThunk值与OrignalFirstThunk字段都指向同一片INT,如下使用上次编写的MyDump工具对其内存进行dump转储,观察内存变化。...,定位到输入表RVA地址处2040h查看

    75830

    PE格式:导入表与IAT内存修正

    本章教程,使用的工具是上次制作的PE结构解析器,如果还不会使用请先看前一篇文章对该工具的介绍,本章节内容主要复习导入表结构的基础知识点,并通过前面编写的一些小案例,实现对内存的转储与导入表的脱壳修复等...解析 IMAGE_IMPORT_DESCRIPTOR数据目录表第二个成员指向输入表,该指针在PE开头位置向下偏移80H处,PE开始位置就是B0H , B0H+80H= 130H处。...图片此处存放着一个指针,00002040 即输入表在内存的偏移量为 2040,使用前面制作的工具可以快速定位到此处。...当程序被运行前,它的FirstThunk值与OrignalFirstThunk字段都指向同一片INT,如下使用上次编写的MyDump工具对其内存进行dump转储,观察内存变化。...,定位到输入表RVA地址处2040h查看

    77800

    Linux系列(五):如何查看服务器内存使用情况

    直接输入free命令,显示如下 free命令默认是显示单位kb,可以采用free -m和free -g命令查看,分别表示MB和GB 另外,free -h会自动选择以适合理解的容量单位显示 Mem:表示物理内存统计...buffers数量;4.7G表示系统分配但未被使用的available数量 附: ps -eo pmem,pcpu,rss,vsize,args | sort -k 1 -r | less 执行以上命令可查看各个程序进程内存使用的内存情况..., 如下图所示,第一列为进程占用的内存百分比,可以看到哪些应用程序占的内存比较多,用于排查问题: 2. top命令 top 命令查看系统的实时负载, 包括进程、CPU负载、内存使用等等; 直接输入top...,可以查看哪些进程是当前系统内存开销“大户”。...top命令,按下 f 键,进入选择排序列的界面,这里可以选择要显示的信息列,要按照哪些信息列进行排序等 参照红框的说明来选择是否显示那些列就行,标*的就是显示

    17K30

    std::span查看连续内存

    C++开发过程,经常会涉及到数组作为函数的入参,数组传参过程通常使用单个指针指向数组,但是需要同时传递数组的长度。...引用已存在的内存,即当被引用的内存数据变化后,span同步更新 连续性(Continuity):std::span 只能查看连续的内存区域,因此适用于数组、容器等连续内存的情况,即std::span不可查看...安全性(Safety):std::span 提供了安全的边界检查,避免了指针操作的常见错误。...使用示例 为尽可能多的展示std::span的使用示例,本文用span分别查看传统数组、malloc分配的连续内存、std::vector,并验证std::span不可用于查看非连续内存区域的std::...总结 std::span只可以用于查看连续内存区域,其不负责内存的分配和释放; std::span作为原有内存的引用,当原内存发生变更时,std::span可同步更新,需注意其引用内存的有效性,当被引用的内存释放后

    6810

    linux内存查看方式

    : 1002M used 已经使用的内存数: 769M free 空闲的内存数: 232M shared 当前已经废弃不用,总是0 buffers Buffer 缓存内存数: 62M cached Page...内存数:286M (指的第一部分Mem行的used - buffers - cached) (+buffers/cache) free内存数: 715M (指的第一部分Mem行的free + buffers...记住内存是拿来用的,不是拿来看的.不象windows, 无论你的真实物理内存有多少,他都要拿硬盘交换文件来读.这也就是windows为什么常常提示虚拟空间不足的原因.你们想想, 多无聊,在内存还有大部分...的时候,拿出一部分硬盘空间来充当内存.硬盘怎么会快过内存.所以我们看linux,只要不用swap的交换空间,就不用担心自己的内存太少.如果常常 swap用很多,可能你就要考虑加物理内存了.这也是linux...看内存是否够用的标准哦.

    9.6K40

    查看linux内存和硬盘

    total:表示物理 内存总量 used:表示总计分配给缓存(包含buffers 与cache )使用的数量,但其中可能部分缓存并未实际使用 free:未被分配的内存 shared:共享内存 buffers...is something that has been “read” from the disk and stored for later use,就是说,cache是从硬盘或者存储设备读进计算机后缓存在内存的数据...这里还有一个名词,Swap,即虚拟内存。当物理内存不够用的时候,就要释放掉一部分空间,以供当前运行程序使用。这些被释放掉的内存的数据就被临时保存在虚拟内存。...但是,并非所有的数据都全被保存,只有那些使用malloc或new生成的对象,他们在文件并没有相应的“储备”文件,被称为匿名内存数据,需要临时地存进Swap。故Swap又称匿名数据交换空间。...在链接3有其说明。

    17.4K20

    Linux 查看系统内存总结

    下面的清单详细的列出了Linux系统下通过视图工具或命令行来查看内存使用情况的各种方法。 1. /proc/meminfo 查看RAM使用情况最简单的方法是通过/proc/meminfo。...进程的内存使用信息也可以通过/proc//statm 和 /proc//status 来查看。...1$ sudo atop 3. free free命令是一个快速查看内存使用情况的方法,它是对 /proc/meminfo 收集到的信息的一个概述。 1$ free -h 4....它还提供了一种查看CPU及内存使用情况的方法。 1$ gnome-system-monitor 5. htop htop命令显示了每个进程的内存实时使用率。...内存使用情况的分析可以导出图表(如条形图和饼图)。 1$ sudo smem --pie name -c "pss" 11. top top命令提供了实时的运行的程序的资源使用统计。

    13.3K20
    领券