[資安補帖] 005─Day5─資安競賽-金盾獎(初賽)經驗分享
飛飛 | 2023-05-21前言
跟社團的大家一起去了金盾獎,
金盾獎的全名是─全國大專院校資安技能金盾獎。
所以今天就來介紹一下金盾獎吧~
社團經驗談
說到創一個社團,學校就會規定社團,
要有規章,身為一個IT社團,我們就用GitHub做規章的版本控制。
HackerSir Articles of association
- 如何修正格式
- master 目前是處於保護狀態
- 如果要修正格式(像是換行,空白)或是修改 Readme 文件
- 請 Push 到 misc 分支,在 merge 到 master
- 修正案
- 請先 fork 到自己的帳戶,再送PR
- 在社員大會上進行討論+表決
正文
這是我第三次參加金盾獎,
如果是學生的話,很推薦來參加這個比賽。
分成初賽跟複賽,
不過我沒有參加過複賽XDDD
所以今天先來分享初賽
題型
- 學科:100題
- 選擇題
- 術科:5題
- CTF競賽
首先,先提一下學科的部分,因為有100題,所以我小小腦袋只記得一些關鍵字XD
希望大家可以在底下留言,分享一下關鍵字XD。
- 區塊鏈
- ITIL
- IAM
- Windows的權限
- LDAP
- 封包鑑識
- ISO/IEC
再來是術科,主辦單位很貼心,附了一個有很多工具的隨身碟,
ps.去年更多工具XD
工具列表
- binwalk-master
- 附上連結大家可以研究看看如何在乾淨的windows環境使用
python setup.py install
- dd
- data duplicator
- Version:0.5
- 推薦食用:dd 指令教學與實用範例,備份與回復資料的小工具
- 內提到基本的指令教學,還有參數的使用方式。
- odbg110
- 32位元
- 然後題目是64位元的rrrrrrrrrrrrrrrrrrrr
Ollydbg真的是來助興的 ~ Norman Clode
- 然後題目是64位元的rrrrrrrrrrrrrrrrrrrr
- 32位元
- winhex
- 第一個bug就是不能存檔
- 我們可以知道沒有C:\TEMP這個資料夾
- 那我們就自己創一個給他
- 了解FILE signature(檔案簽章)
- 電腦如何判別檔案的類型
三步驟:
- 驗證副檔名
- 驗證文件簽名 (file signature)
- 使用預設的程式開啟檔案
~ 文件簽名檔 (FILE SIGNATURES)|菲談
- 電腦如何判別檔案的類型
- 第一個bug就是不能存檔
- apktool
- 將apk轉換成原始碼
- Dev-Cpp
- 請愛惜內建的 gdb 、 objdump
- 因為來助興的Ollydbg不能使用,因此需要用到gdb來分析EXE檔案
- 請愛惜內建的 gdb 、 objdump
- Python
- Version:3.7.0
- Wireshark
- win32
- win64
- 用來分析封包的軟體,其中有一題就是給你一個封包,然後去找Flag。
- 這題目,應要熟練如何操作Wireshark。
write_up
- App-release-flag.zip
- zip 解壓縮會是一個 apk
- apk
- 我們可以透過apktool
- 但是這邊我們透過將副檔名 .apk 直接改成.zip
- 解壓縮之後可以解出App內的檔案
- 因為電腦只有記事本
- 利用Flag格式flag{}
- 最後在
resources.arsc
這個檔案找到
- 解壓縮之後可以解出App內的檔案
- mal_victim.pcapng
- 封包題型
- 透過Wireshark來解題
- 我解題的思路是先找http
- 利用Follow這個功能
- 搜尋HTTP Stream
- 以及TCP Stream
- 最後會在TCP Stream
- Stream 13
- 再提供一個方法
- 直接對該封包用記事本打開
- 然後搜尋flag
- 就有了QQ
- crackMe.exe
- 就有了QQ
- 然後搜尋flag
- 直接對該封包用記事本打開
- 題目要找出密碼是多少
- 而不是繞過判斷
- 這題一開始下意識就會打開odbg110
- 然後就會發現32位元跟64位元
- 然後就悲劇XD
- 然後就會發現32位元跟64位元
- 後來一發現Dev C++內建gdb和objdump
- 我們利用gdb打開一看
- 我們分析組合語言可以發現
- 做字串比較 XOR
- 比較五次都對才是答案
>>> chr(0xe ^ 0x41) 'O' >>> chr(0xd ^ 0x41) 'L' >>> chr(0x2d ^ 0x41) 'l' >>> chr(0x24 ^ 0x41) 'e' >>> chr(0x9 ^ 0x41) 'H'
- 我們分析組合語言可以發現
- 我們利用gdb打開一看
- 封包題型
- gold_shield.zip
- 請愛惜winhex
- 無法存檔的時候
- 就直接在C槽建一個temp(請愛護錯誤訊息)
- 無法存檔的時候
- 打開來看FILE signature是QZ
- 當下不知道那是什麼
- 就直接改PK吧
(被打- QZ 表示 ZIP分割檔
- PK 表示 一般的ZIP檔
- 然後存檔
- 就可以解壓縮了
- 然後就會有張圖片QQ
-
請照著圖片上打ctrl + alt +delete
-
- 然後就會有張圖片QQ
- 就可以解壓縮了
- 這時候要利用binwalk
python binwalk_simple.py -B 接檔名
- DoReMiSo
- 就會看到新的ZIP檔案
python extract_data.py 接檔名
- 把東西拆出來了
- 得到一張有看起來很凱薩的圖
- 來吃點沙拉
s = "mshn{dolyl_aolyl_pz_spml,aolyl_pz_ovwl}" for c in s: if ord(c) in range(ord('a'), ord('z')+1): c = chr((ord(c) - 97 - 7) % 26 + 97) print(c, end="")
5.程式的第一步
- DoReMiSo
- 就直接改PK吧
- 當下不知道那是什麼
- hello world
- 拿各種大小寫hello world來撞 md5
- 07a6c2cf43aac78ad09f9c57e8f65b71
- 這裡附上Python過程
>>> import hashlib >>> hashlib.md5(b"").hexdigest() 'd41d8cd98f00b204e9800998ecf8427e' >>> hashlib.md5(b"flag{Hello World!}").hexdigest() '3ae537c57ebb9191fdce385d28880773' >>> hashlib.md5(b"flag{Hello World}").hexdigest() '734d1e181b68bbba6959cd51c5d6bce2' >>> hashlib.md5(b"flag{hello world}").hexdigest() '07a6c2cf43aac78ad09f9c57e8f65b71'
- 請愛惜winhex
鐵人賽中跟金盾
相關的文章
- 鐵人搜尋引擎來源
- 隔壁棚的SoL前輩分享的心得
- Day2 - 107 金盾初賽分享
- 題型分享
GDPR AI BYOD COPE VPN Windows
- 題型分享
- Day15 - 金盾決賽小心得
- 前輩們解了七題,非常的厲害,期許自己有機會可以進步。
- 談準備環境、環境品質戰略XD
- Day2 - 107 金盾初賽分享
- 隔壁棚的SoL前輩分享的心得
Google跟金盾
相關的文章
- 106年資安技能金盾獎 初賽心得
Linux指令(別走火入魔,今年只考一題chmod)、雲端名詞、網管實務、作業系統、加密演算法、通訊協定、攻擊方式、協會跟標準的歷史
- 2016 金盾獎 初賽心得
試題範圍包含通訊網路與系統安全、通訊網路安全技術、系統安全技術、密碼學原理與應用、雲端安全、BYOD行動設備管理、電腦鑑識及個資保護等項,試題設計著重理論與實務
Iaas 、Paas、Saas 的差異,似乎是每年必考
數位簽章,有一題好像是選「數位簽章不具有可用性 (availability)」
IPsec
HTTPS, SSH, SSL, SSLv2, TLS
VPN: PPTP, SSL, Hybrid
標準與協會:NIST, ISO, OCED, P-mark,有一題竟然問 P-mark 是那一國
Switch 的一些常見設定:QoS, VLAN, Port-security, SNMP, DNS, DHCP snooping
沒聽過的軟體們:Tripwire, Kerberos
常見攻擊:DDoS, Land attack, SYN flood, IP spoofing, dns reflection attack
無線安全:WPA2 enterprise, 802.1X, LDAP, Radius, EAP, EAP-TLS, PKI , PEAP
Firewall, IDS(intrusion detection system), IPS (intrusion prevention system), anomaly-based detection, signature -based detection,
密碼學: hash, md5, AES, RSA, SHA, MAC, HMAC,只要知道這些名詞在幹麻就好,不怎麼考細節
個資的原則:OCED, APEC
背 port: TCP/UDP, HTTPS, HTTP, syslog, 某題它考了一個奇怪的協定是用哪個 port
failover, single point of failure, 即時備援機制, cluster, least privilege, default deny
apache server: .htaccess, AllowOverwrite
虛擬化:vm theft, VM jumping, vm superabundance