<pre id="vvttv"><mark id="vvttv"><progress id="vvttv"></progress></mark></pre>
    <pre id="vvttv"></pre>

      <p id="vvttv"></p>

          <p id="vvttv"></p>

                <p id="vvttv"></p>

                <pre id="vvttv"><cite id="vvttv"><progress id="vvttv"></progress></cite></pre>

                  <output id="vvttv"><dfn id="vvttv"><th id="vvttv"></th></dfn></output>

                    <p id="vvttv"></p>

                    原文地址:http://drops.wooyun.org/tips/13345

                    二哥說過來自烏云,回歸烏云。Web400來源于此,應當回歸于此,有不足的地方歡迎指出。

                    0x00 Web200


                    先不急著提web400,讓我們先來看看web200的xss。

                    Url:http://960a23aa.seclover.com/index.php?xss=xxx

                    顯然參數xss是要上payload。先大概看一眼都過濾了什么。

                    p1

                    可以發現尖括號和冒號都過濾成下劃線了,并且嘗試了好幾種姿勢也無法繞過。

                    再看看其他的過濾規則。

                    p2

                    基本都過濾了,就剩下一個孤零零的1了。

                    p3

                    再祭出《web前端安全》提到的奇妙payload,注意到onerror中的on被吃掉了。

                    連打多個on也是沒有用的,聯想到以前玩sql注入的經驗,oonn這樣的形式是能打出on來的。看到這結果的存在,頓時感覺來了希望。

                    p4

                    這種形式似乎已經很接近了,但是萬惡的下劃線仍舊無法解決,一度陷入死局了。

                    后來,學長說仔細看看源碼,那誰寫過網頁他或許能看出什么。

                    p5

                    注意到開頭一句,似乎平時我不是那么寫的,又注意到頁面有css,就跑偏到了http://drops.wooyun.org/web/11539這篇文章,但是似乎并沒有什么用。百度了一下第一句話。

                    p6

                    !!?識別和加載,趕緊試了一下。

                    AngularJS 的表達式是寫在雙大括號內:{{ expression }}

                    p7

                    識別了!

                    p8

                    確定了版本號以后,隊友就找到一發payload。

                    經過加工:{{'a'.coonnstructor.prototype.charAt=[].join;$evevalal('x=1} } };aleonrt(1)//');}}

                    p9

                    彈彈彈了:)

                    0x01 Misc:饑荒_MC


                    在web400前,那就再提提misc的饑荒_MC,這是我見過的最有趣的ctf題目沒有之一,之前聽說了好久的websocket也第一次見到實例。

                    打開一看,似乎是個小游戲。

                    p10

                    一般出現在ctf里的游戲不能輕視。

                    第一關一切平和,直通第二關。

                    p11

                    第二關,似乎要找到一個key才能通關,頓感道路坎坷。Key是什么也沒說,只說空格是個功能按鍵,那就先跑跑全圖唄。跑了一會感覺太煩了,找隊友寫了個按鍵精靈來模擬。

                    p12

                    但是跑完這張圖也沒能進去,就想會不會key在第一關,要知道這種游戲向來不按常理出牌。

                    就開始跑第一關,突然發生了一件奇妙的事情,一卡我突然傳送到了一個奇怪的地方。

                    p13

                    似乎由于不明原因,我突然跳關到了第三關。(后來想想可能是時間競爭?)

                    第三關是個砍樹關,由于已經靠按鍵精靈連過兩關,思路已經被定勢了,已經聽不進學長說什么js本地調試了,義無反顧的跳進坑里。要砍9999個木頭來做木鎬(一切始于木頭),發現要按住空格一秒才能砍到一個木頭,感覺似乎哪里不對,然而還是找個東西按著空格。。。直到5分鐘后,發現被管理員踢掉了,才最終確定這是個坑,不可能通過小伎倆來過了。只得打開js代碼,幸虧寒假看了一下《js-dom編程藝術》。

                    p14

                    p15

                    參數有個isReady,要加載完全部的圖片才能運作,打開firebug,把圖片另存為,放到相應位置,再寫個html調用game.js(直接檔網頁上的就行)

                    p16

                    突然一下就開啟上帝視角了,毫不猶豫的跳關到level 4,卻發現服務器提示你的寶石劍在哪?然后就被踢了。觀察了一下代碼,似乎應該有一只boss。

                    p17

                    大概長成這樣。

                    觀察代碼

                    p18

                    實在不行,我就召喚一只boss出來,然后burp抓包,把玩家改為boss,但是似乎沒有什么用,應該是在服務器端做的驗證。

                    注意到hero的幾種圖片。

                    p19

                    p20

                    似乎這兩種狀態我都沒有見到過,感覺哪里不對,再研讀代碼。

                    p21

                    木頭關下面有鉆石關,并且注意到最后一關,似乎有兩個點會自殺,幸虧沒有過去。(第二關前面的門是假門,根本不存在key)

                    找到了木頭采集函數修改一下。

                    p22

                    直接9999,木鎬get。

                    進入鉆石關

                    這個似乎和木頭關的函數差不多。(圖片已經修改過)

                    p23

                    當然直接9999被踢掉線了,嘗試了一下似乎50是極限了。那就要點200下,而且感覺上傳時間還有間隔限制,于是又打開了戀戀不舍的按鍵精靈。雖然慢,還是能在1,2分鐘里完成任務。

                    終于拿到鉆石劍了,如今我已天下無敵,走,捅boss去。

                    p24

                    系統提示。

                    p25

                    要捅15下boss或者殺5個人,做為一個wow的pve休閑玩家我當然選擇捅15下boss(注意短距離武器那句話,結合自殺點是把弓箭)。

                    然而發現boss近距離一刀我就躺了,遠程扣血導致pvp的難度也挺高(除非送人頭)。循環往復幾次,終于感覺按鍵精靈的速度不能滿足我了(主要是發現學長在我旁邊一下就拿到鉆石劍了)。就把條件注釋掉,發現上傳速度不再卡頓,但是按200下還是太煩,最終又打開了按鍵精靈。(這里其實可以寫個循環,論思維定勢的可怕)。

                    既然近距離一刀秒,我就修改了攻擊范圍,又為了方便瞄準,又把boss圖像修改了。

                    p26

                    大概是這樣,可惜pve休閑玩家的水準已經不足以讓我靠走位捅到它15下了。

                    最終在學長提示數據交互的時候終于恍然大悟。

                    p27

                    把攻擊地址直接改為boss地址,然后找個陰暗的小角落就ok了。

                    0x02 Web400


                    終于到了web400,頁面打開看一眼(url:http://b525ac59.seclover.com/

                    p28

                    p29

                    一個github的圖標和不要去爆破的提示,點開一看是github第三方授權的頁面。感覺應該不會是github認證的漏洞。

                    p30

                    綁定后樣子是這樣,一張github頭像的圖片,github的uid,一開始不知道為什么名字那邊是none,結合find flag man,猜測最后的flag應該會輸出在name的位置,網絡也只請求了一張圖片。

                    p31

                    又一頭霧水不知道該怎么辦了。

                    知道burp抓包的時候,把cookie都去掉后發現了這個。

                    p32

                    Flask似乎有點眼熟,感覺在哪里看到過,于是翻找了一下。

                    p33

                    就在幾天前的烏云知識庫發表的文章,文章提到了控制模板內容來進行任意代碼執行。再看頁面的情況,感覺確實挺像那么回事的,模板里的內容都是我github上的,那么接下來就是找到可控點,來調用python了。接下來就一直跑偏到那張圖片,我一直以為圖片是可控內容,但是搗鼓了半天也沒什么用。后來點開github的設置突然恍然大悟,明白了為什么name是none。

                    p34

                    因為我根本沒設置名字Orz。趕緊把名字設成{{7*7}}。

                    p35

                    發現被解析了(和那道xss神似的方法)。

                    原文作者的payload不能直接使用,對python的內置函數也不熟悉,只得翻閱官方手冊。

                    p36

                    找到了打開文件的方法,感覺這個靠譜,試了一下,似乎沒有什么用,于是去github上面搜索了一下內置的使用方法。

                    p37

                    問題太多一下子翻不過來,注意到有10個用戶用了這個奇葩名字,就打開看了一下。

                    p38

                    !!看我都找到了什么,復制一句看的順眼的,就爆flag了。

                    p39

                    這個應該算是官方福利吧,畢竟不是什么人都會寫payload的。

                    以上,完。沒有什么太多的技術干貨,基本都是自己逗逼的紀實,不管審核過沒過,記錄一下還是值得的。

                      <pre id="vvttv"><mark id="vvttv"><progress id="vvttv"></progress></mark></pre>
                      <pre id="vvttv"></pre>

                        <p id="vvttv"></p>

                            <p id="vvttv"></p>

                                  <p id="vvttv"></p>

                                  <pre id="vvttv"><cite id="vvttv"><progress id="vvttv"></progress></cite></pre>

                                    <output id="vvttv"><dfn id="vvttv"><th id="vvttv"></th></dfn></output>

                                      <p id="vvttv"></p>

                                      这里只有精品视频