資訊安全入門講座 @ 竹北高中
講者:Sean 韋詠祥
又為何想學習資安
請打開 Git Bash
%HOMEPATH%
cd ~/Documents/
git clone https://github.com/krother/bash_tutorial.git
cd bash_tutorial/
cd exercises/
cd exercise_1/
Cybersecurity Contest
FLAG{printable}
的字串(Part 1)
(Part 1)
Morse code
..-. .-.. .- --. {
.... . .-.. .-.. --- _
.-- --- .-. .-.. -.. }
Pigpen cipher
Templar cipher
Caesar cipher
Frequency Analysis
中冰紅、大涼咖、雞堡蛋
壓縮 / 解壓縮
程式碼混淆
45 min
使用 A-Z
, a-z
, 0-9
, +
, /
以及 =
編碼
0-9
, A-F
A-Z
, 2-7
0-9
, A-Z
0O
, Il
, +/
S0pWWFFRU1NHT
lpXV1dTVkpaCj
RVMk1LU01aTkV
LUVJRQkpJVgpN
T0RZTUpXRFMyS
1JMQkhHWVMKTF
pKWTRVR1paNUh
VRkE9PT09Cg==
下午將於 13:00 開始
歡迎與身邊同學切磋交流
(Part 2)
路徑遍歷
CVE-2021-43798
💡 用 "curl --path-as-is
" 保留 "../
" 路徑
用 filepath.Join
處理使用者輸入有風險
Rel
" 的用途func Rel(basepath, targpath)
/* Join(basepath, Rel(basepath, targpath)) == targpath */
回傳「某個相對路徑」,這個相對路徑在以 basepath
為出發點時,會得到 targetpath
如果解不出答案,則回傳錯誤
執行前先檢查是否為相對路徑
URL Encoding
American Standard Code for Information Interchange
Unicode Transformation Format - 8-bit
CVE-2021-41773
嘗試使用 "%2e
" 來繞過系統
CVE-2021-42013
讓我們再看一次 Patch(補丁)
確保 "%
" 後面兩個字只能是 0-9
、a-f
或 A-F
使用 "%%32%65
" 進行 double encode(雙重編碼)
(Part 2)
Elliptic-Curve Cryptography
Elliptic-curve Diffie–Hellman
Avalanche Effect
請破解以下密碼
username |
md5_password |
---|---|
alice |
cffbad68bb97a6c3f943538f119c992c |
bob |
a2eda25e9bd2d4a4a1a182cb4d59c16a |
carol |
bed128365216c019988915ed3add75fb |
hzsrnqc klyy wqc flo mflwf ol zqdn nsoznj
wskn lj xzsrbjnf, wzsxz gqv zqhhnf ol ozn
glco zlfnco hnlhrn; nsoznj jnrqosdnc lj fnqj
kjsnfbc, wzsxz sc xnjoqsfrv gljn efeceqr.
zn rsdnb qrlfn sf zsc zlecn sf cqdsrrn jlw,
wzsoznj flfn hnfnojqonb. q csfyrn blgncosx
cekksxnb ol cnjdn zsg. zn pjnqmkqconb qfb
bsfnb qo ozn xrep, qo zlejc gqozngqosxqrrv
ksanb, sf ozn cqgn jllg, qo ozn cqgn oqprn,
fndnj oqmsfy zsc gnqrc wsoz loznj gngpnjc,
gexz rncc pjsfysfy q yenco wsoz zsg;
(Part 3)
Cross-Site Scripting
延伸學習資源
自由練習、歡迎提問
投影片連結:https://hackmd.io/@Sean64/sec-cpshs2023