0x4C43's Blog
2020-04-05T08:15:11.672Z
http://0x4c43.cn/
0x4C43
Hexo
博客图床迁移
http://0x4c43.cn/2018/1029/blog-map-migration/
2018-10-29T10:20:24.000Z
2020-04-05T08:15:11.672Z
<p>博客搭建的时候选择了七牛云作为图床,到目前为止往上传了大概 100 张图片。近日收到七牛云测试域名回收的通知,只好另选其它云存储作为博客图床,网络上已有图床迁移方法,遂参考并记录于此。</p>
<h1 id="0x01-下载图片"><a href="#0x01-下载图片"
2018 铁人三项赛 aleph1 Writeup
http://0x4c43.cn/2018/1029/2018-triathlon-aleph1-writeup/
2018-10-29T03:45:08.000Z
2020-04-05T07:38:11.336Z
<h1 id="0x01-漏洞位置"><a href="#0x01-漏洞位置" class="headerlink" title="0x01 漏洞位置"></a>0x01 漏洞位置</h1><p>程序很简单,调用 fgets() 从 stdin 中读取 1337 bytes 数据
栈溢出 Stack smash 利用
http://0x4c43.cn/2018/1013/stack-overflow-smash-utilization/
2018-10-13T11:40:28.000Z
2020-04-05T07:30:51.156Z
<p>在 Linux 系统应用程序中部署 Canary 漏洞缓解机制可有效防御栈溢出漏洞的攻击,然而在一定环境下,攻击者可利用该机制泄露内存信息,实现进一步的攻击。</p>
<h1 id="0x01利用思路"><a href="#0x01利用思路" class="headerli
EasyRM2MP3 栈溢出分析
http://0x4c43.cn/2018/0814/easyrm2mp3-stack-overflow-analysis/
2018-08-14T09:50:00.000Z
2020-04-05T07:45:10.244Z
<h1 id="0x01-漏洞信息"><a href="#0x01-漏洞信息" class="headerlink" title="0x01 漏洞信息"></a>0x01 漏洞信息</h1><p>Easy RM to MP3 Converter 是一款音频文件格式转换工具,根据
IDAPyhon 脚本批量分析程序
http://0x4c43.cn/2018/0803/idapyhon-script-batch-analysis-program/
2018-08-03T01:20:18.000Z
2020-04-05T07:30:50.672Z
<p>当我们需要对大量二进制文件进行分析时,使用 Python 将其自动化,可以极大的提高效率。</p>
<h1 id="0x01-运行-IDA"><a href="#0x01-运行-IDA" class="headerlink" title="0x01 运行 IDA"></a>
使用 AFL 进行模糊测试
http://0x4c43.cn/2018/0722/use-afl-for-fuzz-testing/
2018-07-22T13:58:12.000Z
2020-04-05T08:00:09.412Z
<p><a href="http://0x4c43.cn/2018/0722/american-fuzzy-lop/">American Fuzzy Lop</a> 中介绍了 AFL 的原理和特性,下面将使用 AFL 对几个常用的应用程序进行模糊测试。</p>
<h1 id="0
American Fuzzy Lop
http://0x4c43.cn/2018/0722/american-fuzzy-lop/
2018-07-22T13:50:34.000Z
2020-04-05T07:38:33.364Z
<p>AFL 是一种安全导向的模糊测试工具,它采用一种新型的编译时插桩和遗传算法来自动生成测试样本,使用这些样本可触发目标二进制程序中新的内部状态,从而可提高模糊测试的代码覆盖率。与其他插桩模糊测试工具相比,afl-fuzz 的设计更具有实用性:具有适度的性能开销,使用各种高效的
VMWare 中扩展 ubuntu 磁盘空间
http://0x4c43.cn/2018/0707/extend-ubuntu-disk-space-in-vmware/
2018-07-07T06:00:23.000Z
2020-04-05T07:59:31.144Z
<p>由于在 VMWare 系统中使用 ubuntu 时安装的软件过多,导致磁盘空间不够用。因此,需要扩展虚拟机的磁盘空间,依照网上找到的方法可完成该过程,便记录在此。</p>
<h1 id="0x01-VMWare-设置"><a href="#0x01-VMWare-设置" c
Heartbleed 漏洞分析
http://0x4c43.cn/2018/0701/heartbleed-vulnerability-analysis/
2018-07-01T04:02:14.000Z
2020-04-05T07:30:50.588Z
<h1 id="0x01-基础知识"><a href="#0x01-基础知识" class="headerlink" title="0x01 基础知识"></a>0x01 基础知识</h1><h2 id="1-SSL协议简介"><a href="#1-SSL协议简介" class
IA-32 内存模型与地址映射
http://0x4c43.cn/2018/0617/ia32-memory-model-and-address-mapping/
2018-06-17T13:37:12.000Z
2020-04-05T07:30:50.672Z
<p>8086 的内部寄存器为 16 bits,同时有 20 根地址线,是第一款支持内存分段模型的处理器,它只工作在实模式下。IA-32(Intel Architecture, 32-bit) 由 1987 年的 8086 处理器发展而来,它的寄存器为 32 bits,有 32
VMware 与 Credential Guard 不兼容
http://0x4c43.cn/2018/0615/vmware-is-not-compatible-with-credential-guard/
2018-06-15T10:31:34.000Z
2020-04-05T07:30:50.880Z
<h1 id="0x01-Problem"><a href="#0x01-Problem" class="headerlink" title="0x01 Problem"></a>0x01 Problem</h1><p>每次更新完 Windows10 后,使用 VMware Wo
二进制程序分析框架 angr
http://0x4c43.cn/2018/0529/binary-program-analysis-framework-angr/
2018-05-29T13:30:00.000Z
2020-04-05T07:58:39.848Z
<p>angr 是一个功能强大的二进制程序分析框架,可用于程序的静态分析和动态符号执行。支持 x86、ARM、MIPS 和 PPC 架构中 32 bit 和 64 bit 可执行程序的分析。</p>
<h1 id="0x01-安装"><a href="#0x01-安装" clas
Linux 系统调用与虚拟动态共享库
http://0x4c43.cn/2018/0517/linux-system-calls-and-virtual-dynamic-shared-libraries/
2018-05-17T06:35:20.000Z
2020-04-05T07:58:10.012Z
<p>系统调用是应用程序与操作系统间的接口。Linux 下使用 0x80 号中断作为系统调用入口,使用 eax寄存器指定系统调用号,ebx、ecx、edx、esi、edi 和 ebp 用于传递调用参数;Windows 下使用0x2E 号中断作为系统调用入口。</p>
<p> 直接
Linux 动态链接
http://0x4c43.cn/2018/0508/linux-dynamic-link/
2018-05-08T06:53:14.000Z
2020-04-05T07:30:50.872Z
<p>动态链接在程序运行时才对组成程序的目标文件进行链接,使用动态链接的方式可使得多个进程共用物理内存中的同一个共享目标文件,从而可节省内存空间。此外,使用动态链接使得各个模块更独立,并方便模块的更新。</p>
<p>为了验证多个进程是否可以共用物理内存中同一个共享对象文件中的代
Linux 延迟绑定机制
http://0x4c43.cn/2018/0429/linux-lazy-binding-mechanism/
2018-04-29T13:05:02.000Z
2020-04-05T07:57:43.256Z
<p>如果使用动态链接方式生成的程序模块中使用大量的函数引用,在程序执行时会花费大量的时间用于模块间函数引用的符号查找和重定位,导致程序性能下降。由于程序中可能存在部分不常用的功能模块,那么在程序开始执行时就完成所有函数的链接工作将会是一种浪费。因此,Linux 系统采用延迟绑定
Linux glibc heap house-of-force
http://0x4c43.cn/2018/0419/linux-glibc-heap-houseofforce/
2018-04-19T15:10:45.000Z
2020-04-05T07:30:50.872Z
<p>该利用方法通过堆溢出漏洞修改 top chunk 的 size 字段,使得 malloc 一块很大的内存可使用 top chunk 进行分配,当更新 top chunk 的 ptr 时会发生整数溢出,从而控制 top chunk ptr 为指定目标内存地址,如 .bss 段
Linux glibc heap house-of-spirit
http://0x4c43.cn/2018/0413/linux-glibc-heap-houseofspirit/
2018-04-13T02:30:14.000Z
2020-04-05T07:30:50.672Z
<p>House of Spirit 利用方法针对 fastbin 中的 chunk,该方法不修改 chunk 结构中的 metadata,而是直接控制释放 chunk 时传递给 free() 函数的指针,使其指向内存中伪造的 fake chunk,free() 函数执行时会将伪
配置 Linux Python 开发环境
http://0x4c43.cn/2018/0316/configure-linux-python-development-environment/
2018-03-16T11:55:21.000Z
2020-04-05T07:30:51.156Z
<p>环境:<br><figure class="highlight python"><table><tr><td class="gutter"><pre><div class="line">1</div><div class="line">2</div></pre></td><
zsh 使用笔记
http://0x4c43.cn/2018/0310/zsh-notes/
2018-03-10T14:20:17.000Z
2020-04-05T07:30:50.888Z
<p>Zsh 是一款功能强大终端(shell)软件,既可以作为交互式终端,也可以作为脚本解释器。它在兼容 Bash 的同时,还有提供了很多改进,例如:</p>
<blockquote>
<p>更高效<br>更好的自动补全<br>更好的文件名展开(通配符展开)<br>可定制性高
Linux 堆内存溢出 unlink 攻击
http://0x4c43.cn/2017/1231/linux-heap-memory-overflow-unlink-attack/
2017-12-31T06:53:28.000Z
2020-04-05T07:30:50.876Z
<p>在二进制漏洞利用中,缓冲区溢出漏洞是最常见的一类漏洞,这类漏洞具有很强的危害性,通常能被攻击者利用并实现任意代码执行。缓冲区溢出漏洞可分为基于栈的内存溢出和基于堆的内存溢出。本文主要介绍如何利用堆内存溢出进行 unlink 攻击,进而实现任意代码执行。</p>
<p>首先看