今年 Water Paddler 拿了第二名,總共 9 題 web 解掉了 8 題(我貢獻了 2 題),整體 web 的難度我覺得去年似乎比較難,今年比的人似乎也比較少一點。
話說最近我發現自己的 writeup 筆記沒有以前這麼多了,其中一個原因是最近比較忙,另一個原因是最近有興趣的題目(client side)沒這麼多,或我也有在想搞不好是隊友越變越強,還沒開題就被隊友解掉,我也懶得再去看題目,於是就懶得寫筆記了XD
這次只記幾題有參與或有興趣的,其他就先省略了。
今年 Water Paddler 拿了第二名,總共 9 題 web 解掉了 8 題(我貢獻了 2 題),整體 web 的難度我覺得去年似乎比較難,今年比的人似乎也比較少一點。
話說最近我發現自己的 writeup 筆記沒有以前這麼多了,其中一個原因是最近比較忙,另一個原因是最近有興趣的題目(client side)沒這麼多,或我也有在想搞不好是隊友越變越強,還沒開題就被隊友解掉,我也懶得再去看題目,於是就懶得寫筆記了XD
這次只記幾題有參與或有興趣的,其他就先省略了。
雖然過了快兩個月,但還是來補一下筆記。去年被電得很慘,原本想說過一年了,今年應該會比較好吧,沒想到還是被電爛。
關鍵字:
開頭先貼一下官方的 repo,裡面有程式碼跟解答:https://github.com/dicegang/dicectf-2023-challenges
最近有人在臉書前端交流社群發了一則貼文,內容是他看到了一個問題:請問登入api傳賬號、密碼json明碼會有問題嗎?,想知道大家對這個問題的看法。
而底下的回答大部份都是覺得「有用 HTTPS 就好了,沒必要額外再實作一層加密,沒有什麼太大的意義」
老實說我以前也是這樣認為的,而且過去在社群中就有出現過類似的討論。我那時候想說都已經有 HTTPS 了,而 HTTPS 本身的目的就是為了保障傳輸的安全,為什麼要自己再做加密?
但這一兩年接觸資安以後,我的想法有了改變,我認為前端在傳輸前把密碼加密,是有其意義的,而接下來我會詳細說明我的理由。
今年認真跟著 Water Paddler 打了一整年的 CTF,看到有人整理出了一篇 CTF: Best Web Challenges 2022,發現裡面的題目大多數我都有打過,就想說那不如我來寫一篇整理吧,整理一下我自己打過覺得有學到新東西的題目。
因為個人興趣,所以會特別記下來的題目都跟前端與 JS 相關,像是其他有關於後端(PHP、Java 等等)的我就沒記了。
另外,這題有紀錄到的技巧或解法不代表第一次出現在 CTF 上,只是我第一次看到或是覺得值得紀錄,就會寫下來。
我把題目分成幾個類別:
簡單記一些自己有打的題目,沒有打的就不記了。
依照慣例先附上關鍵字:
前陣子有幾個 CTF 都很不錯,像是 SECCON 跟 HITCON,但可惜我前陣子剛好出國玩了,回來以後就懶得寫完整 writeup 了。原本其實連記下來都懶得記,可是一旦時間久了,要找相關的資料就會變得很難找,所以還是決定簡單記一下。
除此之外,順便記一下幾題我覺得以前應該要記下來,但不知道為什麼卻沒記下來的題目。
關鍵字:
被 web 題電得亂七八糟,基本上什麼都沒解出來。題目的品質都很不錯,學到很多新東西,值得記錄一下。
關鍵字:
<!--
上個假日隨意地玩了一下 SekaiCTF 2022,不得不說視覺風格滿讚的,看得出來花了滿多心思在這個上面,很有遊戲的感覺。
這次我只玩了兩題 web,其中一題 xsleak 的 safelist 拿了 first blood,另外一題沒解開,說實在有點可惜(當 justCatTheFish 解開的時候我想說是誰這麼猛,賽後發現原來是 terjanq lol)
這篇寫一下 safelist 跟 Obligatory Calc 的解法,如果想看其他 web 題,可以看 lebr0nli 的 blog:SekaiCTF 2022 Writeups
關鍵字:
在講到針對網頁前端的攻擊時,你我的心中浮現的八成會是 XSS,但如果你沒辦法在網頁上執行 JavaScript,有沒有其他的攻擊手法呢?例如說,假設可以插入 style 標籤,你能夠做些什麼?
在 2018 年的時候,我有寫過一篇 CSS keylogger:攻擊與防禦,那時剛好在 Hacker News 上面看到相關的討論,於是就花了點時間研究了一下。
而 4 年後的現在,我從資安的角度重新認識了這個攻擊手法,因此打算寫一兩篇文章來好好講解 CSS injection。
這篇的文章內容包含: