
bin
文章平均质量分 83
CodeStarr
Make good use of your time
展开
-
ROP_Emporium_ret2win_armv5
文章目录ret2win_armv5信息收集黑盒测试反汇编Expret2win_armv5依赖:sudo apt install qemu-arm-static gcc-arm-linux-gnueabi信息收集$ file ret2win_armv5ret2win_armv5: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.3, f原创 2022-05-06 22:07:38 · 564 阅读 · 0 评论 -
ROP_Emporium_ret2win_mipsel
文章目录ret2win_mipsel信息收集黑盒测试反汇编Expret2win_mipsel依赖:sudo apt install qemu-mipsel-static gcc-mipsel-linux-gnu信息收集$ file ret2win_mipselret2win_mipsel: ELF 32-bit LSB executable, MIPS, MIPS32 rel2 version 1 (SYSV), dynamically linked, interpreter /lib/ld.原创 2022-05-06 22:06:36 · 334 阅读 · 0 评论 -
QilingLab练习
文章目录1. 简介安装2. QuickStart3. qltool4. QilingLab练习challenge 1 - memory map解challenge 2 - set_syscall解challenge 3 - add_fs_mapper解challenge 4 - hook_address解challenge 5 - set_api解challenge 6challenge 7 - 3种思路解1解2解3challenge 8逆向解1-读栈解2-搜索内存challenge 9challenge原创 2022-04-25 19:51:47 · 3307 阅读 · 3 评论 -
QEMU System环境
文章目录1. 安装2. 网络配置关于tap网卡3. 其它使用方法4. 参考资料文档:https://www.qemu.org/docs/master/Wiki: https://wiki.qemu.org/Main_PageQemu Mips文档:https://www.qemu.org/docs/master/system/target-mips.html1. 安装本文以mips小端版本为例:sudo apt install qemu-system-mipsel -y然后下载mips的内核原创 2022-04-06 18:44:05 · 4057 阅读 · 1 评论 -
DVRF_Intro_stack_bof_01
文章目录1. 环境2. 提取固件3. stack_bof_01小练信息收集黑盒测试反汇编payload这篇笔记是第一次固件分析的记录。1. 环境QEMU环境请参考另一篇博客:https://blog.youkuaiyun.com/Ga4ra/article/details/123959989下载DVRF:ttps://github.com/praetorian-inc/DVRF。可以从gitee上搜一下,有很多镜像。2. 提取固件目录:starr@starr-VirtualBox:~/Documents/原创 2022-04-06 18:41:32 · 2105 阅读 · 0 评论 -
QEMU User环境
文章目录1. QEMUbinfmt2. 编译测试mipsARM3. 调试本地调试IDA远程调试官网:https://www.qemu.org/文档:https://www.qemu.org/documentation/Wiki:https://wiki.qemu.org/Main_Pagehttps://wiki.qemu.org/Documentation1. QEMU可以用apt的搜索命令看看有哪些可下载项:$ apt search qemu-可以列出很多, 一般原创 2022-04-04 20:38:12 · 3196 阅读 · 0 评论 -
binwalk笔记
文章目录1. 一些基础知识固件复习一下Linux2. 安装3. 命令行用法反汇编扫描签名扫描提取熵Diff压缩其它通用选项源码仓库:https://github.com/ReFirmLabs/binwalkGitee镜像:https://gitee.com/mirrors/BinwalkWiki: https://github.com/ReFirmLabs/binwalk/wiki集成工具firmware-mod-kit,感觉不太好用,随便从dlink上下了一个固件,binwalk可以提取,fmk的原创 2022-04-04 19:12:50 · 2241 阅读 · 0 评论 -
AFL入门笔记
文章目录1. 安装2. 插桩3. Quick Startcorpus基本使用输出多线程字典崩溃分析4. 用户手册如何查看结果如何配置(环境变量)多线程5. Using ASAN with AFL6. TipsFuzz优化7. More about AFLAFL原理8. Demo9. 其它参考资料官方文档:https://afl-1.readthedocs.io/en/latest/fuzzing.html其他文章:https://www.freebuf.com/articles/system/191原创 2022-04-01 20:57:38 · 2335 阅读 · 0 评论 -
ROP_Emporium_ret2csu
文章目录1. ret2csu信息收集反汇编关于ret2csu利用Rop chainExp3. 参考文章1. ret2csu信息收集题目只有64位版本,提供了以下文件:encrypted_flag.dat key.dat libret2csu.so ret2csu作者提示,这个题和callme类似,调用ret2win()并提供指定的参数即可,但缺少明显的可利用的gadget。$ file ret2csuret2csu: ELF 64-bit LSB executable, x86-64,原创 2022-03-28 11:47:33 · 413 阅读 · 0 评论 -
ROP_Emporium_pivot
文章目录1. pivot32信息收集黑盒测试反汇编思路Exp2. pivot反汇编调试分析Exp3. 参考文章如果esp和ebp能够被控制,那么整个堆栈就可以被控制,甚至被转移。Stack pivoting就是一种栈迁移技术,可以用来绕过NX,或者溢出空间太小的情况。1. pivot32信息收集$ file pivot32pivot32: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, in原创 2022-03-27 10:56:43 · 2249 阅读 · 0 评论 -
CSAPP-bomblab-writeup
文章目录phase 1phase 2phase 3phase 4phase 5phase 6文章已首发于看雪论坛Bomb这个程序是《深入理解计算机系统》的配套实验的一部分,一共6关。原地址:http://csapp.cs.cmu.edu/3e/labs.htmlhttp://csapp.cs.cmu.edu/3e/bomb.tar环境:Ubuntu 18.04IDA 远程调试phase 1第一关热身题,输入一段明文保存的字符串:.text:0000000000400EE4 mo原创 2022-03-26 12:40:39 · 1505 阅读 · 0 评论 -
ROP_Emporium_badchars
文章目录1. badchars32信息收集黑盒测试反汇编思路Exp2. badchars信息反汇编构造Payload调试分析Exp3. 参考文章1. badchars32信息收集题目提供了一个可执行文件badchars32, 一个动态库libbadchars32.so,一个flag.txt。$ file badchars32badchars32: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked原创 2022-03-25 16:15:01 · 865 阅读 · 0 评论 -
ROP_Emporium_write4
文章目录1. write432信息收集黑盒测试反汇编思路Exp2. write4反汇编PayloadExp3. 参考文章1. write432信息收集题目给了3个文件:write432, libwrite432.so, flag.txt。$ file write432write432: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.原创 2022-03-24 20:45:42 · 876 阅读 · 0 评论 -
ROP_Emporium_callme
文章目录1. split32信息收集黑盒测试反汇编调试分析Exp2. split参考文章1. split32信息收集这个题提供了以下文件:callme32可执行程序libcallme32.so动态库key1.dat,key2.datencrypted_flag.dat不知道callme32格式那里不对,checksec会报错NameError: name 'dt_rpath' is not defined。一会黑盒测试如果崩溃了就说明有canary,而pie可以从入口点判断:$ rea原创 2022-03-24 17:05:27 · 1280 阅读 · 0 评论 -
ROP_Emporium_split
文章目录1. split32信息收集黑盒测试反汇编Exp调试分析2. split黑盒测试反汇编Exp参考文章1. split32信息收集$ file split32split32: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=76cb700a2ac0484f原创 2022-03-24 11:43:03 · 315 阅读 · 0 评论 -
ROP_Emporium_ret2win
文章目录1. ret2win32信息收集反汇编Exp2. ret2win反汇编Exp题目下载地址:ROP Emporium1. ret2win32信息收集$ file ret2win32ret2win32: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=e1原创 2022-03-23 21:09:15 · 721 阅读 · 0 评论 -
格式化字符串漏洞
文章目录1. 再看printfprintf家族函数转换规则2. 漏洞原理危害防范3. 任意地址内存泄漏 Demo4. 覆盖栈数据5. 任意地址覆盖6. Pwntool Demo7. 工具8. 参考文章格式化字符串漏洞基本已经销声匿迹了,不过在iot设备上可能还会存在。1. 再看printfprintf家族函数#include <stdio.h>int printf();int fprintf();int dprintf();int sprintf();int snprintf(原创 2022-03-22 18:24:57 · 2064 阅读 · 0 评论 -
HITCON_CMT_2017_pwn200
文章目录1. 基本信息反汇编思路3. 调试4. exp源码文件下载1. 基本信息file:$ file HITCON_CMT_2017_pwn200HITCON_CMT_2017_pwn200: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 2.6.24, BuildID[sha1]=57aa663原创 2022-03-22 18:23:29 · 2046 阅读 · 0 评论 -
pwnablekr-asm-seccomp-sandbox
文章目录1. 基本信息反汇编流程梳理2. 相关知识seccomp3. exp4. 源码5. 参考文章1. 基本信息file:$ file asmasm: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=d7401f94b1d6bf6a5afe4b原创 2022-03-21 20:35:14 · 1744 阅读 · 0 评论 -
整数溢出漏洞
本想借这类老洞练练pwntool,但最后的脚本getshell失败了。整数的异常情况主要有三种:溢出:针对有符号数。两正或两负相加时,有可能改变符号位的值。可用溢出标志 OF 检测。回绕:针对无符号数。以byte为例,其实就是0-1, 255+1。可用进位标志 CF 检测。截断: 将一个较大宽度的数存入一个宽度小的操作数中,高位发生截断。实例#include<stdio.h>#include<string.h>void validate_passwd(char原创 2022-03-18 23:22:08 · 1582 阅读 · 0 评论 -
GDB笔记
文章目录一. 环境vscode远程调试二. 文档目录2. Getting In and Out of GDB3. GDB commands4. Running Programs Under GDBAttachinferior快照5. Stopping and ContinuingGDB的4种断点5.2 Continuing and Stepping8. Examining the Stack10. Examining Data(!!!!!!)10.6 [Examining Memory](https://s原创 2022-03-17 19:52:38 · 997 阅读 · 0 评论 -
ELF链接原理
文章目录1. 示例代码2. 静态链接链接过程静态链接库3. 动态链接PICGOT与PLT延迟绑定Lazy Binding1. 示例代码// mainextern int g_nShared;extern void func(int *a, int *b) ;void main(void) { int n = 2; func(&n, &g_nShared);}// func.c#include<stdio.h>int g_nShared原创 2022-03-15 23:43:35 · 619 阅读 · 0 评论 -
png隐写
文章目录1. PNG格式2. 功能设计3. 读取并解析png验证magic解析main4. 编码payload隐写:将信息植入其它数据,并可以提取出来。仅关键逻辑提供源码。1. PNG格式PNG官网介绍了png的文件格式,可供参考。也可以用010editor的png模板。简述一下,首先是8字节magic:89 50 4E 47 0D 0A 1A 0A直接用uint64表示即可:type Header struct { magic uint64 // 0:8}然后是块(chunk原创 2022-03-01 17:54:03 · 3527 阅读 · 0 评论 -
Go-SMB
文章目录1. 理解SMBToken混合编码元数据和引用字段2. 域内密码猜解3. Pass The Hash3. 恢复NTLM密码SMB协议常用于windows后渗透,该协议通常用于网络共享资源,如文件、打印机和串行端口,并允许通过命名管道在分布式网络节点之间进行进程间通信。使用SysInternals的PsExec(注意带微软签名)工具可以做到远程命令执行。另外,SMB还可以处理NTLM验证,如远程密码猜解、基于散列的身份验证(pass the hash)、SMB中继,和NBNS/LLMNR欺骗。原创 2022-02-27 16:35:18 · 2062 阅读 · 0 评论 -
逆向病毒要注意的函数
文章目录进程(注入,创建)AdjustTokenPrivileges()CreateRemoteThread()SetWindowsHookEx()CreateToolhelp32Snapshot()ShellExecute()关于动/静态分析CreateProcess()注册RegOpenKeyEx(), RegCreateKeyEx()文件FindFirstFile(), FindNextFi...转载 2019-09-24 20:25:09 · 399 阅读 · 0 评论 -
Ant1-D3bug
反调试文章目录反调试1. 反调试分类1.1 静态反调试PEBTEB原始API其它1.2 动态反调试2. 部分方法的示例代码2.1 PEBBeingDebuggedProcessHeapNtGlobalFlag;2.2 NtQueryInformationProcessProcessDebugPort(0x07)ProcessDebugObjectHandle(0x1e)ProcessDebugF...原创 2019-11-22 10:21:54 · 387 阅读 · 0 评论 -
PE手动重定位
文章目录源码运行添加重定位信息工具:RadAsm,010 Editor,LordPE。源码 .386 .model flat,stdcall option casemap:noneinclude msvcrt.incincludelib msvcrt.lib.dataszText db 'welcome', 0ah, 00hszPause db 'pause', 00h...原创 2019-11-15 15:34:09 · 654 阅读 · 0 评论 -
《0day》-2-栈溢出
第 2 章 栈溢出文章目录第 2 章 栈溢出1. 系统栈的工作原理1.1 内存的不同用途1.2 栈与系统栈1.3 函数调用时发生了什么1.4 寄存器与函数栈帧1.5 函数调用约定与相关指令2. 修改邻接变量2.1 修改邻接变量的原理3. 修改函数返回地址4. 代码植入4.1 代码植入的原理1. 系统栈的工作原理1.1 内存的不同用途不管什么样的操作系统、什么样的计算机架构,...原创 2019-06-26 11:02:34 · 410 阅读 · 0 评论 -
ctf101-Reverse Engineering
Reverse Engineering文章目录Reverse Engineering1. Assembly / Machine Code1.1 From Source to Compilation1.2 x86-641.2.1 x86-64 Registers1.2.2 Instructions1.2.3 Execution1.2.4 Examples1.2.5 Example Ex...转载 2019-06-15 10:49:15 · 617 阅读 · 0 评论 -
ctf101-Binary Exploitation
文章目录@[toc]Binary Exploitation1. Registers2. The Stack2.1 Uses3. Calling Conventions3.1 cdecl3.2 SysV3.3 other conventions4. Global Offset Table (GOT)4.1 PLT5. Buffers5.1 Buffer OverflowPassing an imp...转载 2019-06-14 10:24:32 · 2256 阅读 · 0 评论 -
《0day》-5-堆溢出
第 5 章 堆溢出利用文章目录第 5 章 堆溢出利用5.1 堆的工作原理5.1.1 Windows 堆的历史5.1.2 堆与栈的区别5.1.3 堆的数据结构与管理策略堆块堆表空表快表堆的管理策略堆块分配堆块释放堆块合并小结5.2 在堆中漫游5.2.1 堆分配函数之间的调用关系5.2.2 堆的调试方法5.2.3 识别堆表5.2.4 ...原创 2019-05-11 15:51:10 · 1820 阅读 · 4 评论 -
pwnable-unlink调试
objdump -d unlinkprintf()3个堆块的栈地址gdb-peda调试原创 2019-09-24 20:17:08 · 150 阅读 · 0 评论 -
16位汇编笔记1-6
16位汇编1-6文章目录1.基础1.1 cpu1.2 总线1.3 内存地址空间1.4 存储1.6 masm2.寄存器2.1 指令2.2 物理地址2.3 段2.4 CS和IP2.5 修改CS,IP2.6 内存访问3.寄存器3.1 字的存储3.2 DS和[address]3.3字的传送3.4 mov、add、sub指令3.5数据段3...原创 2019-04-07 20:32:11 · 460 阅读 · 0 评论 -
16位汇编笔记7-11
16位汇编笔记7-11文章目录16位汇编笔记7-117.定位内存地址7.1 and & or7.3 字符数据7.5 [bx+idata]7.8 [bx+si]和[bx+di]7.9 [bx+si+idata]和[bx+di+idata]7.10 应用8 数据处理的两个基本问题8.1 bx,bp,si,di8.2 数据位置8.3寻址方式8.4 处理数据长度8.5 除法指令div8.6 伪...原创 2019-04-20 16:27:05 · 702 阅读 · 0 评论 -
《0day》-1-基础知识
第 1 章 基础知识文章目录第 1 章 基础知识1. 漏洞概述1.3 漏洞挖掘、漏洞分析、漏洞利用漏洞挖掘漏洞分析1.4 漏洞的公布与 0 day 响应2. 二进制文件概述2.1 PE 文件格式.2.2 虚拟内存2.3 PE 文件与虚拟内存之间的映射1. 漏洞概述1.3 漏洞挖掘、漏洞分析、漏洞利用利用漏洞进行攻击可以大致分为漏洞挖掘、漏洞分析、漏洞利用三...原创 2019-07-04 14:41:46 · 1350 阅读 · 0 评论 -
《0day》-6-各种内存攻击技术
内存攻击技术文章目录内存攻击技术windows异常处理机制1.1 原理1.2 缺陷1.3 在栈溢出中利用 S.E.H1.4 在堆溢出中利用 S.E.H1.5 深入挖掘 Windows 异常处理1.5.1 不同级别的 S.E.H1.5.2 线程的异常处理unwind1.5.3 进程的异常处理1.5.4 系统默认的异常处理 U.E.F1.5.5 异常处理流程的总结1.6 其他异常处理机制的利用思路...原创 2019-07-25 20:44:57 · 821 阅读 · 0 评论 -
IDA使用
文章目录0x00. 配置0x01. 主窗口跳转交叉参考0x02. 操作注释修改api帮助重命名标签FLIRT0x03. 数据识别格式化指令操作数指令数据转换字符串数组结构体嵌套结构体union枚举类型位成员变量0x04. 脚本和插件输出导入表SMC0x05. 调试ida按照区块加载PE。打开时生成4个文件:.id0,二叉树形式数据库.id1,每个程序字节的标记.nam,与ida的nam...原创 2019-08-24 08:07:51 · 2830 阅读 · 0 评论 -
恶意程序分类
文章目录后门或陷门逻辑炸弹特洛伊木马Zombie(肉机)病 毒分类蠕 虫防病毒软件graph TD a[malicious programs]-->b[needs host program] a-->c[independent] b-->d[trapdoors] b-->e[logicbombs] b-->f[Tr...原创 2019-06-24 15:02:08 · 3155 阅读 · 0 评论 -
2 assembler & 2 disassembler
文章目录反汇编引擎:BeaEngineCapstone汇编引擎:XEDParsekeystone反汇编引擎:BeaEngine把headers和库文件win32两个文件夹拷贝到项目目录下。预定义宏、包含头文件和库文件#include "stdafx.h"#include <windows.h>#define BEA_ENGINE_STATIC#define BEA_US...原创 2019-09-27 14:26:53 · 875 阅读 · 1 评论 -
windows-PEB&TEB
文章目录结构体BeingDebuggedLdr老版本成员Process Environment Block,另一个很重要的是TEB,都是高级调试的基础。MSDN文档给的资料很少,以后练习调试会慢慢补充。FS:[30] == TEB.ProcessEnvironmentBlock == address of PEB获取PEB地址:mov eax, dword ptr fs:[30h]或者...原创 2019-10-08 20:18:27 · 922 阅读 · 0 评论