摘要: [第五空间2019 决赛]PWN5 这次我们换一下,尝试只用工具来解题 浅看一下 int __cdecl main(int a1) { unsigned int v1; // eax int result; // eax int fd; // [esp+0h] [ebp-84h] char nptr 阅读全文
posted @ 2022-05-29 00:58 MuRKuo 阅读(65) 评论(0) 推荐(0) 编辑
摘要: second 2 pwn 签到 nc 直接连接 #!/usr/bin/python #-*- coding: utf-8 -*- ''' Author : MuRKuo Email : 1442121990@qq.com Create time : 2022-04-11 09:07 Filename 阅读全文
posted @ 2022-05-23 20:26 MuRKuo 阅读(10) 评论(0) 推荐(0) 编辑
摘要: ida+gdbserver 动态调试 前言 不知道是因为太简单了还是怎么的网上的文章都很少,所以在此记录一下 ida 选择remote GDB debug Hostname 是使用gdb调试的环境ip地址 Port 是使用gdb调试的环境的开放的端口,这个需要和gdb监听的端口一致(因为这种调试本质 阅读全文
posted @ 2022-05-04 02:27 MuRKuo 阅读(81) 评论(0) 推荐(0) 编辑
摘要: 2022DASCTF X SU 三月春季挑战赛 easyre 前奏 查壳 查壳,asp壳,esp定律脱之,修复可以看我的上一篇文章 main函数 main函数的反汇编代码 int __cdecl main(int argc, const char **argv, const char **envp) 阅读全文
posted @ 2022-04-30 02:00 MuRKuo 阅读(31) 评论(0) 推荐(0) 编辑
摘要: scylla 修补 这里以x64dbg的scylla插件脱upx的壳为例 定位oep 运行->步过->步过....->大跳转 scylla 修补脱壳程序 scyalldump出程序 Fix dump 此时同目录出现的以_SYC结尾的程序就是修补后的程序 修补成功 阅读全文
posted @ 2022-04-30 01:03 MuRKuo 阅读(37) 评论(0) 推荐(0) 编辑
摘要: 条件转移指令 重要寄存器 ZF:零标志位。代码执行后结果为0那么ZF=1;结果不为0则ZF=0; SF:符号标志位。相关指令执行后结果为负(-),那么SF=1;结果非负数,则SF=0; OF:溢出标志位。记录了有符号运算的结果是否发生了溢出,如果发生溢出OF=1;如果没有OF=0; 比较指令 整数比 阅读全文
posted @ 2022-04-27 00:25 MuRKuo 阅读(88) 评论(0) 推荐(0) 编辑
摘要: first fit c源码 #include <stdio.h> #include <stdlib.h> #include <string.h> int main() { fprintf(stderr, "This file doesn't demonstrate an attack, but sh 阅读全文
posted @ 2022-03-22 20:25 MuRKuo 阅读(20) 评论(0) 推荐(0) 编辑
摘要: pwn heap 1 test.c #include<stdio.h> #include<stdlib.h> int main(){ void* ptr = malloc(0x100); free(ptr); return 0; } chunk 最小的size8字节(32位系统) chunk分配的时 阅读全文
posted @ 2022-03-22 20:09 MuRKuo 阅读(13) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2022-03-19 09:56 MuRKuo 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 《汇编语言》 学习笔记 第一章 基础知识 1.1 机器语言 每一种微处理器,由于硬件设计和内部结构的不同,就需要不同的点评脉冲来控制,使他工作。所以每一种微处理器都有自己的机器指令级,也就是机器语言。 1.2 汇编语言的产生 此后,程序员使用汇编指令编写源程序,这时候就需要使用编译器,将汇编指令转成 阅读全文
posted @ 2022-03-16 22:53 MuRKuo 阅读(58) 评论(0) 推荐(0) 编辑
摘要: ret2libc 3 漏洞点 src开辟了256字节空间,dest开辟了56个地址 strcpy将src中的字符串拷贝到dest中 src可控 反汇编 int __cdecl main(int argc, const char **argv, const char **envp) { char ** 阅读全文
posted @ 2022-03-05 16:51 MuRKuo 阅读(22) 评论(0) 推荐(0) 编辑
摘要: retlibc 2 分析 这道题和第一个ret2libc唯一的区别就是没有/bin/sh 从上一道题的知识可以构造出以下模板 由于我们插入了一段gets,所以我们需要在发送完打入gets的payload后另外写入gets的内容 exp from pwn import * p = process('. 阅读全文
posted @ 2022-03-04 20:33 MuRKuo 阅读(10) 评论(0) 推荐(0) 编辑
摘要: ret2libc 1 exp from pwn import * p = process('./ret2libc1') elf = ELF('./ret2libc1') system_plt = elf.plt["system"] bin_sh = next(elf.search(b"/bin/sh 阅读全文
posted @ 2022-03-04 17:43 MuRKuo 阅读(29) 评论(0) 推荐(0) 编辑
摘要: pwndbg基本操作 基本指令 help //帮助 i //info,查看一些信息,只输入info可以看可以接什么参数,下面几个比较常用 i b //常用,info break 查看所有断点信息(编号、断点位置) i r //常用,info registers 查看各个寄存器当前的值 i f //i 阅读全文
posted @ 2022-03-04 17:20 MuRKuo 阅读(203) 评论(0) 推荐(0) 编辑
摘要: 动态链接过程 第一次调用函数 第二次调用函数 此时system@got中已经保存了正确的system函数的真实地址 可以直接进行调用 阅读全文
posted @ 2022-03-04 16:50 MuRKuo 阅读(15) 评论(0) 推荐(0) 编辑
摘要: 函数调用 程序执行前 执行system函数时 接下来需要调用system需要的arg 这时候的system的栈帧 retuen add = exit() arg = "/bin/sh" exit 与system函数同 阅读全文
posted @ 2022-03-04 16:25 MuRKuo 阅读(14) 评论(0) 推荐(0) 编辑
摘要: RAV to RAW 学习《逆向工程核心原理》笔记 参考:https://tech-zealots.com/malware-analysis/understanding-concepts-of-va-rva-and-offset/ 名词介绍 Relative Virtual Address (RVA 阅读全文
posted @ 2022-01-24 02:13 MuRKuo 阅读(28) 评论(0) 推荐(0) 编辑
摘要: Pwntools操作基本指令 from pwn import * '''连接远程题目''' r = remote('0.0.0.0',809) #usage:remote('host',port) #exp code r.interactive() #取得shell后可将commant传到termi 阅读全文
posted @ 2022-01-20 18:13 MuRKuo 阅读(106) 评论(0) 推荐(0) 编辑
摘要: 汇编&栈基础 说明 push寄存器:将一个寄存器中的数据入栈 pop寄存器:出栈用一个寄存器接收数据 sp:栈顶指针(段寄存器) ax,bx,ss,sp 均为16位寄存器(2字节) 操作 assume cs:codesg ;cs寄存器指向该程序的首地址 codesg segment mov ax,1 阅读全文
posted @ 2022-01-20 15:59 MuRKuo 阅读(30) 评论(0) 推荐(0) 编辑
摘要: 今天准备培训环境的时候一不小心把/etc/sudoers给删掉了。。。 后来终于改好了,不过在这留个备份 ## Sudoers allows particular users to run various commands as ## the root user, without needing t 阅读全文
posted @ 2022-01-19 01:45 MuRKuo 阅读(22) 评论(0) 推荐(0) 编辑