2018鐵三測評題write以及一些想送給你們的話


 一.、前言

  此文獻給實驗室的萌新們,以及剛剛接觸CTF的同學們,希望能對你們的成長起到一些幫助。

 

二、關於CTF

  可能你已經接觸過CTF或者對它有所了解,這里我再簡單介紹一下。

1.什么是CTF?

  CTF(Capture The Flag)中文一般譯作奪旗賽,是網絡安全技術人員之間進行技術競技的一種比賽形式,起源於1996年DEFCON全球黑客大會,以比賽形式模擬代替黑客們之間的真實技術比拼。

2.CTF比賽模式

模式

說明

解題模式

      參賽隊伍通過互聯網或者現場網絡參與,類似於各位此次做的線上測評題目,你可以理解為在線答題環節,通過解決網絡安全技術挑戰題目的分值和時間來排名,通常用於在線選拔賽。題目主要包含Web安全、逆向、密碼學、數據分析、隱寫、安全編程、代碼審計與漏洞挖掘利用等。

攻防模式

      參賽隊伍在網絡環境內互相進行攻擊和防守,挖掘網絡服務漏洞並攻擊對手服務器獲得分數,並且通過修補自身服務漏洞進行防御來避免丟分。這種模式競爭較為激烈,比拼參賽隊員的智力和技術、團隊之間的分工配合與合作、也比拼體力。

混合模式

      結合了上面說的解題模式與攻防模式 ,賽制較為靈活。

 

三、測評題目分析

1.你是管理員嗎?

解題鏈接:http://ctf4.shiyanbar.com/web/root/index.php 
  第一道題目是一個Web題。通常拿到Web題,常做的是右擊查看源代碼;利用瀏覽器調試工具F12查看頁面元素、在調試工具的”網絡”中觀察請求頭等。

  這題我們打開頁面,發現一個登陸框,並且默認用戶名為admin。我們查看頁面源碼,或者直接從title的提示中,我們可以發現一個password.txt文件,於是我們訪問一下這個文件http://ctf4.shiyanbar.com/web/root/password.txt,發現這是一個密碼字典。 既然是密碼字典,於是我們便嘗試對這個登陸頁面進行口令的暴力破解,用戶名admin。這里會用到BurpSuite工具,關於使用這個工具暴力破解密碼,大家網上搜索,可以參考這篇文章

發現了正確口令組合為:admin/Nsf0cuS 

我們利用這組口令去進行登陸,發現頁面密碼框處限制了字符輸入長度。我們可以在前端利用調試工具定位到密碼框處,修改密碼字段的長度限制。

當我們登陸的時候,在開發者調試工具的“網絡”數據查看功能的地方發現我們的請求數據

 這里的cookie一看就是個Base64加密的字符串。當然,這需要一些密碼學的知識,關於密碼學的學習,你可以參考我轉載的這篇博文

 

我們對這個字符串進行Base64解密,

MjkwYmNhNzBjN2RhZTkzZGI2NjQ0ZmEwMGI5ZDgzYjkucGhw

 得到

290bca70c7dae93db6644fa00b9d83b9.php

當然,上面的我們也可以在burpsuite中直接進行登陸數據的提交

那么,同樣的我們就訪問一下這個文件,發現是一個留言板頁面。

當我們隨便進行留言測試的時候,發現沒有權限。這里,我們可以修改cookie以及登陸參數進行欺騙。

  我們利用burpsuite抓包時,可以發現兩個參數:IsLogin和userlevel。很明顯,IsLogin的值標識用戶是否登陸,userlevel指明用戶身份。當我們把這兩個值修改成如圖所示內容后,在響應報文里即可發現flag。

  這里IsLogin可能比較容易理解,但是userlevel的值為什么要改成root?有沒有什么竅門呢?我們回憶題目,“管理員”是一個很重要的提示,一般管理員默認用戶名,linux下比如admin,root。windows下是administrator,我們可以合理猜解。得到的Flag有兩個字符,需要進行URL解碼

flag{C0ngratulati0n}

 

 

2.IOS

解題鏈接:http://ctf4.shiyanbar.com/web/IOS/index.php

這題頁面中提示系統升級到了IOS99,我們可以想到修改User-Agent進行欺騙。

關於User-Agent,大家參考我的這篇博文加以了解。User Agent是一個特殊字符串頭,是一種向訪問網站提供我們所使用的瀏覽器類型及版本、操作系統及版本、瀏覽器內核、等信息的標識。我們訪問網頁的時候,會自動提交這個參數。通過這個標識,我們訪問的網站可以顯示不同的排版從而適應我們的瀏覽器,提供更好的體驗。

我們可以在網上搜索一個IOS99的User-Agent值示例,也可以自己構造,比如

Mozilla/5.0 (iPhone; CPU iPhone OS 99 like Mac OS X) AppleWebKit/0 Safari/536

 我們根據要求,提交信息之后,即可獲得flag。

這里檢測了瀏覽器標識 、操作系統標識、渲染引擎標識、版本信息。順帶提一下,最后的瀏覽器字段,只能使用Safari,你改成其他瀏覽器就不行,

因為Safari是蘋果研發的瀏覽器,也是iPhone手機、iPodTouch、iPad平板電腦中iOS指定默認瀏覽器。

flag{LMvBi8w9$m1TrgK4}

 

3. 照貓畫虎

解題鏈接:http://ctf4.shiyanbar.com/web/copy/index.php

這題,右擊查看源代碼,頁面元素,沒有發現。於是我們分析其網絡請求

 

看到Set-Cookie,是不是熟悉了?一回生,二回熟。我們先把最后兩個%3D字符串解碼得到"==",進行base64解密

MjY5OTowNDE1NzQwZWFhNGQ5ZGVjYmM4ZGEwMDFkM2ZkODA1Zg==

得到

2699:0415740eaa4d9decbc8da001d3fd805f

如果你已經有了一些密碼學的基礎,你應該會發現2699后面是一串經過32位md5加密的數據,如果看不出來,回頭在看看密碼學的東西去,至少熟悉各種形式的密文,知道其使用的加密算法。

我們繼續,給大家推薦一個加解密md5的網站:http://www.cmd5.com/

說明后半段的值,是前一個數字的32位md5加密字符串。於是我們“照貓畫虎”,把“1234567890”md5之后,組合起來

 

1234567890:e807f1fcf82d132f9bb018ca6738a19f

 然后把這段字符串經過Base64編碼后,修改成cookie地值,提交,即可獲得flag

flag{T4mmL9GhpaKWunPE} 

 

 4.問題就在這

解題鏈接:http://ctf4.shiyanbar.com/ste/gpg/john.tar.gz.gpg 

提示:找答案 GPG key: GhairfAvvewvukDetolicDer-OcNayd# 

  這題下載到的是一個gpg文件,文件名為john.tar.gz.gpg。我們可以從網上了解到這是一個經過GPG加密的數據,加密前的文件很可能是john.tar.gz,linux下的一種壓縮文件。

  自然地想到,我們要對這個文件進行解密,但是無論是解題前,還是解題后,我都強烈建議你深入了解一下GPG的知識。

  windows下有很方便的工具可以進行解密,下載鏈接:https://gpg4win.org/download.html。當然,kali也自帶了gpg工具,關於它的使用,你可以參考我的另一篇博文:http://www.cnblogs.com/ssooking/p/8378407.html。解密命令:

gpg --output john.tar.gz --decrypt john.tar.gz.gpg

解密時,需要輸入密鑰:GhairfAvvewvukDetolicDer-OcNayd#。密鑰不會在控制台上顯示。

 解密完成后,我們解壓壓縮包,會得到一個pcap數據包文件。

使用用Wireshark分析數據包,里面有許多HTTP數據,我們直接導出HTTP對象

我們也可以將數據包導入Charles工具中分析http

我們可以看到有很多圖片,我們想到了考察內容中的隱寫。隱寫術是信息隱藏,即不讓計划的接收者之外的任何人知道信息的傳遞事件或信息內容的一門技巧與科學。CTF中隱寫術的題目,如果給圖片,一般會把一些信息隱藏到圖片里。我們可以使用stegsolve工具來分析這些圖片。

stegsolve是一個java程序,電腦上需要裝有java環境,正確配置了環境變量才能運行。一般雙擊即可,命令行環境下的運行命令

java -jar stegsolve.jar

當我們使用該工具對logo.png圖片進行分析時,可以發現隱藏的flag。至於為什么找到了logo.png這張圖片,當你運氣不好的時候,你可能需要一個一個試試了。

flag{J0hn_th3_Sn1ff3r}

 

 

5.你最美

解題鏈接:http://ctf4.shiyanbar.com/misc/123/123.exe

這題下載到了一個exe文件,一般給這種文件,基本是考察逆向分析。但是,我們從這個鏈接中,發現這個題目屬於安全雜項分類(密碼學、隱寫術、數據包分析等)

我們把這個程序放進十六進制編輯器中,這里我用的工具是HxD

一看到這個,我們就可以發現,這是一張圖片,只是經過了base64編碼(別問為什么了,見多了你就知道啦。這種格式很好記),關於這種base64圖片存在的意義,你可以看看這篇文章:https://www.cnblogs.com/coco1s/p/4375774.html。我們利用在線工具(http://imgbase64.duoshitong.com/),把這么長的一大串數據轉回圖片。

 

發現是一個二維碼,掃碼即可獲得flag。當然,不使用工具,我們也可以新建一個html文件,把這么長的數據引入img圖片標簽里,也能夠看到圖片。類似於

<img src="xxxxxxxxxxxxxxxx">

flag{you are beautiful}

 

 

6.shellcode
解題鏈接:http://ctf4.shiyanbar.com/re/shellcode/shellcode.txt

  這道題目給了一段十六進制代碼,分類在逆向里,如果你懂逆向和PWN,會寫shellcode,可能會順着它的思路,順手就寫個shellcode出來了。但是寫完之后,會發現沒法運行,直接崩潰。而且,對萌新來說,可能會一臉懵,也不會寫shellcode。所以這題需要換個思路。

  我們重新觀察這些十六進制數據

\x6a\x0b\x58\x99\x52\x66\x68\x2d\x63\x89\xe7\x68\x2f\x73\x68\x00\x68\x2f\x62\x69\x6e\x89\xe3\x52\xe8\x34\x00\x00\x00\x65\x63\x68\x6f\x20\x5a\x6d\x78\x68\x5a\x33\x74\x54\x53\x45\x56\x73\x62\x47\x4e\x76\x5a\x47\x56\x66\x53\x56\x4e\x66\x63\x32\x39\x66\x51\x32\x39\x76\x62\x48\x30\x4b\x7c\x62\x61\x73\x65\x36\x34\x20\x2d\x64\x00\x57\x53\x89\xe1\xcd\x80

 

既然是十六進制,我們就把這些數據放到十六進制編輯器中看看。在文檔里,把“\x”全都去掉

6a0b58995266682d6389e7682f736800682f62696e89e352e8340000006563686f205a6d78685a3374545345567362474e765a47566653564e6663323966513239766248304b7c626173653634202d6400575389e1cd80

我們拷貝這些數據,在HxD中新建一個空白二進制文檔,把這些內容粘貼進去。

發現了一段經過了base64編碼的數據:ZmxhZ3tTSEVsbGNvZGVfSVNfc29fQ29vbH0K

base64解碼,發現它就是flag

flag{SHEllcode_IS_so_Cool}

 

四、最后的一些話

   時刻保持一顆不斷學習和進取的心,在堅持不懈的努力中奮勇前進!一路征途,風雨無阻(共勉!)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM