4.10 x64dbg 反汇编功能的封装

LyScript 插件提供的反汇编系列函数虽然能够实现基本的反汇编功能,但在实际使用中,可能会遇到一些更为复杂的需求,此时就需要根据自身需要进行二次开发,以实现更加高级的功能。本章将继续深入探索反汇编功能,并将介绍如何实现反汇编代码的检索、获取上下一条代码等功能。这些功能对于分析和调试代码都非常有用,因此是书中重要的内容之一。在本章的学习过程中,读者不仅可以掌握反汇编的基础知识和技巧,还能够了解如

10.4 认识Capstone反汇编引擎

Capstone 是一款开源的反汇编框架,目前该引擎支持的CPU架构包括x86、x64、ARM、MIPS、POWERPC、SPARC等,Capstone 的特点是快速、轻量级、易于使用,它可以良好地处理各种类型的指令,支持将指令转换成AT&T汇编语法或Intel汇编语法等多种格式。Capstone的...

[攻防世界][Reverse]xxxorrr

将目标文件拖入IDA 反汇编main函数 __int64 __fastcall main(int a1, char **a2, char **a3) { int i; // [rsp+Ch] [rbp-34h] char s[40]; // [rsp+10h] [rbp-30h] BYREF uns

【Android 逆向】【ARM汇编】 全局资源重定位

资源重定位解释: 字符串反汇编代码解释: .rodata:00001E20 __exidx_end DCB "a + b = %d" ; DATA_XREF: main+28^o .rodata 所在段名 00001E20 偏移地址 __exidx_end IDA 给的一个字符串名称 DCB IDA

驱动开发:内核实现进程汇编与反汇编

在笔者上一篇文章`《驱动开发:内核MDL读写进程内存》`简单介绍了如何通过MDL映射的方式实现进程读写操作,本章将通过如上案例实现远程进程反汇编功能,此类功能也是ARK工具中最常见的功能之一,通常此类功能的实现分为两部分,内核部分只负责读写字节集,应用层部分则配合反汇编引擎对字节集进行解码,此处我们将运用`capstone`引擎实现这个功能。

4.3 x64dbg 搜索内存可利用指令

发现漏洞的第一步则是需要寻找到可利用的反汇编指令片段,在某些时候远程缓冲区溢出需要通过类似于`jmp esp`等特定的反汇编指令实现跳转功能,并以此来执行布置好的`ShellCode`恶意代码片段,`LyScript`插件则可以很好的完成对当前进程内存中特定函数的检索工作。在远程缓冲区溢出攻击中,攻击者也可以利用汇编指令`jmp esp`来实现对攻击代码的执行。该指令允许攻击者跳转到堆栈中的任意位

[攻防世界][Reverse]666

下载附件,是一个可执行的ELF文件666,拖进IDA中查看 main 函数反汇编得到 int __cdecl main(int argc, const char **argv, const char **envp) { char s[240]; // [rsp+0h] [rbp-1E0h] BYRE

1.1 熟悉x64dbg调试器

x64dbg 是一款开源、免费、功能强大的动态反汇编调试器,它能够在`Windows`平台上进行应用程序的反汇编、调试和分析工作。与传统的调试器如`Ollydbg`相比,x64dbg调试器的出现填补了`Ollydbg`等传统调试器的不足,为反汇编调试工作提供了更高效、更可靠的解决方案。正是因为有了这些优点,才能使其成为当今最受欢迎的反汇编调试软件之一。

1.1 熟悉x64dbg调试器

x64dbg 是一款开源、免费、功能强大的动态反汇编调试器,它能够在`Windows`平台上进行应用程序的反汇编、调试和分析工作。与传统的调试器如`Ollydbg`相比,x64dbg调试器的出现填补了`Ollydbg`等传统调试器的不足,为反汇编调试工作提供了更高效、更可靠的解决方案。正是因为有了这些优点,才能使其成为当今最受欢迎的反汇编调试软件之一。

[转帖]linux--Segfault详解

linux--Segfault详解 1 简介1.1 段错误的定义1.2 痛点 2 知识点2.1 报错内容2.2 error number 3 排除步骤(借助汇编)3.1 日志确定错误类型3.2 计算相对地址3.3 反汇编该库文件3.4 查找地址对应的汇编语句3.5 在中间件中查找信息 3 排除步骤(

【转帖】Linux开发工具 — readelf、objdump、hexdump

本博文的主要内容是:1)readelf工具查看ELF文件的信息;2)hexdump工具查看这块内存;3)objdump工具对文件进行反汇编。 前一段时间对Linux不熟,所以很多命令不知道。学习C时候需要偶尔看一下汇编用来理解。我喜欢用问题的形式来学习和总结。 1. 如何看一个程序代码变量的存储布局

驱动开发:内核LDE64引擎计算汇编长度

本章开始`LyShark`将介绍如何在内核中实现`InlineHook`挂钩这门技术,内核挂钩的第一步需要实现一个动态计算汇编指令长度的功能,该功能可以使用`LDE64`这个反汇编引擎,该引擎小巧简单可以直接在驱动中使用,LDE引擎是`BeaEngine`引擎的一部分,后来让`BeatriX`打包成了一个`ShellCode`代码,并可以通过`typedef`动态指针的方式直接调用功能,本章内容作

驱动开发:摘除InlineHook内核钩子

在笔者上一篇文章`《驱动开发:内核层InlineHook挂钩函数》`中介绍了通过替换`函数`头部代码的方式实现`Hook`挂钩,对于ARK工具来说实现扫描与摘除`InlineHook`钩子也是最基本的功能,此类功能的实现一般可在应用层进行,而驱动层只需要保留一个`读写字节`的函数即可,将复杂的流程放在应用层实现是一个非常明智的选择,与`《驱动开发:内核实现进程反汇编》`中所使用的读写驱动基本一致,

10.5 认识XEDParse汇编引擎

XEDParse 是一款开源的x86指令编码库,该库用于将MASM语法的汇编指令级转换为对等的机器码,并以XED格式输出,目前该库支持x86、x64平台下的汇编编码,XEDParse的特点是高效、准确、易于使用,它可以良好地处理各种类型的指令,从而更容易地确定一段程序的指令集。XEDParse库可以集成到许多不同的应用程序和工具中,因此被广泛应用于反汇编、逆向工程、漏洞分析和入侵检测等领域。XED

4款免费且实用的.NET反编译工具

反编译工具的作用 .NET反编译工具能够将已经编译好的.NET程序集转换为易于理解的源代码,它们可以帮助开发人员恢复丢失的源代码、理解和分析第三方组件dll、学习其他人的代码、更好的查找修复 bug 或进行逆向工程等(注意:请在法律允许范围内合理使用)。 ILSpy ILSpy是一款免费、开源的 .

.NET反编译神器ILSpy怎么用?

前言 上一篇文章我们介绍了4款免费且实用的.NET反编译工具👉,这篇文章主要来说说ILSpy这个工具该如何安装和使用。 ILSpy ILSpy是一款免费、开源的 .NET 反编译工具,能够将已编译的 .NET 程序集转换为易于阅读和理解的源代码。 GitHub开源地址:https://github

Pyinstaller打包exe的反编译——LitCTF 2024(公开赛道)ezpython!!!!!

这个工具折磨了我很久,搭配题目记录一下... 题目 Die 打包工具: PyInstaller 建议下载GitHub的:GitHub - extremecoders-re/pyinstxtractor: PyInstaller Extractor 单独的一个 pyInstaller.py 会很麻烦

【Android逆向】apk 反编译

1. Kali搭建apktool环境 1. 访问apktool 官网https://ibotpeaches.github.io/Apktool/install/ 参考红圈里的步骤处理即可 2. 执行命令反编译apk apktool d ./xxxx_v5.4.apk 注意这里有可能因为assert目

【Android 逆向】apk反编译后重打包

1. 执行 apktool b smali_dir smali_dir 为反编译出来的数据目录 执行后可能会报错 I: Building resources... W: /root/Desktop/tmp/qimao_dir/qimao_v5.4/AndroidManifest.xml:1: err

.NET应用如何防止被反编译

前言 前段时间分享了两篇关于.NET反编译相关的文章,然后文章留言区就有小伙伴提问:如何防止被反编译?因此本篇文章我们就来讲讲.NET应用如何防止被反编译。.NET反编译相关的文章可以看如下文章: 4款免费且实用的.NET反编译工具 .NET反编译神器ILSpy怎么用? .NET应用如何防止被反编译