- 博客(13)
- 收藏
- 关注
转载 Linux X86架构 32 64系统调用表
Linux X86架构 32 64系统调用表来源https://rninche01.tistory.com/entry/Linux-system-call-table-%EC%A0%95%EB%A6%ACx86-x64自用,侵删x86_32 Syscall tableNumsyscall%eaxarg0 (%ebx)arg1 (%ecx)arg2 (%edx)arg3 (%esi)arg4 (%edi)arg5 (%ebp)0restart_syscall0x0
2021-09-14 15:20:52 2706 1
原创 [堆利用:TCache机制]hauseofAtum
[堆利用:TCache机制]hauseofAtum题目链接:https://github.com/blue-lotus/BCTF2018/tree/master/pwn/houseofAtum0x00 逆向分析菜单:__int64 menu(){ puts("1. new"); puts("2. edit"); puts("3. delete"); puts("4. show"); printf("Your choice:"); return getint();}功能
2021-03-27 09:32:44 645
原创 [堆利用:TCache机制]HITB CTF 2018:gundam
[堆利用:TCache机制]HITB CTF 2018:gundam题目链接:https://github.com/moonAgirl/CTF/tree/master/2018/Hitbxctf/gundam0x00 逆向分析sub_AEAunsigned __int64 sub_AEA(){ unsigned __int64 v1; // [rsp+8h] [rbp-8h] v1 = __readfsqword(0x28u); puts(&s); puts("1 . B
2021-03-19 18:14:08 1052
原创 [堆入门off-by-null]asis2016_b00ks
[BUUCTF] asis2016_b00ks 堆入门off-by-null刚开始学pwn就听说,堆的题目很魔幻,需要大量的基础知识。在漫长地啃堆基础原理以后,这是我第一次自己研究学习并且完全明白原理的堆题。特地在此做笔记记录。0x00 逆向分析一进来就很容易发现,这也是堆题中最为常见的菜单题目。简单分析一下,打开程序,最先产生交互的函数是sub_B6D。调用了sub_9F5函数,是作者自己写的read函数,再进去看看。注意这里的判定:先++buf,然后判断是否达到了最大长度(32字符),
2020-12-02 18:36:25 1378 4
原创 [2020 GeekChallenge] Re un_snake
[2020 GeekChallenge] Re un_snake0x00 逆向下载文件后,发现是pyc文件。pyc文件可以使用uncompyle6库。题目告诉我们是3.8.5版本的python,因此我就给python3装了库。pip3 install uncompyle6注意我电脑装的是python2 python3共存,如果电脑只有python3的直接pip就行,不用pip3。装完以后,去下载文件路径里,打开cmd,输入uncompyle6 -o un_snake.cpython-38.p
2020-11-18 17:36:10 250
原创 [2020 GeekChallange] Re 刘壮的BaseXX
[2020 GeekChallange] Re 刘壮的BaseXX0x00 逆向分析把文件丢进IDA64可以看到套了两层循环,如果执行了break即输出Correct。切换到汇编界面分析:通过分析汇编代码结构可以猜测出程序大致分为加密、比较两部分。0x01 加密部分观察汇编代码部分,可以看到循环里调用了两个函数:sub_140001420和sub_1400010E0反编译看看。sub_140001420通过分析代码,不难看出它将我们输入的字符串,用for循环,一个一个字符进
2020-11-18 17:36:00 273
原创 [2020 GeekChallange] Pwn fmt
[2020 GeekChallange] fmt0x00 格式化字符串漏洞提示格式化字符串漏洞简单介绍一下原理:在写C语言时,不免经常使用printf函数,这个函数有一个很常见的用法:a = 24;printf("%d岁,是学生",a);输出结果很显然是24岁,是学生但是如果出现这么个情况:a = "%p.%p.%p.%p."printf(a)它就会输出栈的后4个地址。a = "%4$p"printf(a)单独输出第四个地址a = "%4$s"printf(a)
2020-11-18 17:35:50 704
原创 [GeekChallenge]Pwn Pwn111
[GeekChallenge]Pwn Pwn1110x00 逆向分析可以看到read 0x200字节,但是buf只有0x80字节,典型的栈溢出。再看函数列表:有write read,典型的ret2csv题0x01 脚本#!/usr/bin/env pythonfrom pwn import *from LibcSearcher import *io = remote('81.69.0.47',1122)elf = ELF('./pwn111')libcfile = ELF('./l
2020-11-18 17:35:29 211
原创 [UNCTF 2020]Pwn方向
直接在linux使用指令nc 45.158.33.12 8000from pwn import *io = remote('45.158.33.12',8000)payload = 'chcp 65001'io.sendline(payload)print(io.recv())运行脚本得到flag
2020-11-14 18:00:29 383
原创 [UNCTF 2020]Reverse方向
[UNCTF]re_checkin0x00 逆向分析一个简单的字符串比较0x01 动态调试上个断点,本地windows调试随便输入点东西双击Str2,选中第一个按一下A,flag就出来了
2020-11-14 17:59:49 781
原创 get_started_3dsctf_2016
get_started_3dsctf_20160x00 逆向可以看到只要在main构造栈溢出,然后跳转到get_flag即可0x01 脚本攻击方法1#!/usr/bin/env pythonfrom pwn import *from LibcSearcher import *io = remote('node3.buuoj.cn',25560)elf = ELF('./get_started_3dsctf_2016')get_flag = 0x80489A0main = 0x8
2020-11-07 16:25:43 1295 2
原创 ZJNU-CTFOJ JavaRE
ZJNU-CTFOJ javaRE先放题目链接:http://zjnuctf.bi0x.cn/challenges#JavaRE由题目得知需要逆向JAVA的.class文件需要用到jadx-gui下载完后发现运行会报错让我装1.8.0的Java,但是我电脑里就是1.8.0的去网上搜了解决办法得知在同一个文件夹内创建一个txt文件,在里面写入java -jar .\jadx-gui-1.1.0.exe再把txt文件后缀改成bat就能运行啦然后把题目给的Reserve.class文件拖进j
2020-09-25 11:20:06 366
原创 IDA Linux文件动态调试配置
IDA Linux文件动态调试配置进去IDA目录./IDA_7.2\dbgsrv找到文件linux_server和linux_server64复制粘贴到虚拟机中(千万不要直接拖进去,会瞬间爆炸)打开终端,用ifconfig看一下本机的IP可以看到IP为192.168.142.130依次输入指令(这里以linux_server 即32位为例)chmod +x ./linux_server(给予权限)./linux_server(运行文件)可以看到Linux已经开始监听了此时打开需要调
2020-09-24 18:05:32 935
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人