picoCTF_Insp3ct0r/Bookmarklet_writeup

更新於 發佈於 閱讀時間約 6 分鐘

前言

本來打算是一天一題的,但前天興致高昂,一不小心就寫了兩題。

不過,也因為這兩題相對簡單,所以我才能完成這樣的任務。要知道在 picoCTF 平台裡,難的事非常難。我就曾經為了一題足足花了兩天才弄懂。

最後在開始之前和大家分享一個挑題的小技巧。

如果是初學者,可以挑按讚趴數高的,這種題會相對簡單,就如今天要分享的這兩題。

如果是有基礎的人,大可從自己擅長的領域下手。這樣可以使自己看到不一樣的世界。




Insp3ct0r

都說學資安需要先學會通靈,這題就是很典型的例子。

先來看看題目敘述。

題述


  • linkpicoCTF - picoGym Challenges
  • Description:Kishor Balan tipped us off that the following code may need inspection: https://jupiter.challenges.picoctf.org/problem/41511/ (link) or http://jupiter.challenges.picoctf.org:41511
  • hint1:How do you inspect web code on a browser?
  • hint2:There's 3 parts


其實題目提示的很明顯,他就是要叫我們檢查網址中網頁的 code。不過,要怎麼檢查呢?

開始解題

網頁不外乎就是由 HTML、CSS、Javascript 這三種標籤語言所組成。

如果我們想看這些 code 可以按 F12或按右鍵檢查,右側會碰出看起來很複雜的東西,那個就是 HTML,有的時候也會看到 CSS,很少會看到 Javascript。

會說需要通靈就是在這裡。

我知道這種題目通常會把 flag 藏在註解裡,所以我把 HTML 裡的夾層通通打開。果然,在最下面的地方藏著 flag。正當我暗自竊喜時,定睛一看,他只給了我三分之一個 flag。檢查了老半天也檢查不出個所以然來。當下心想,這鬼才知道另外的三分之一在哪。

後來看了其他人的 writeup 後,一種點點點的心情油然而生。後面就讓我說說這題的作者他的出題邏輯到底是甚麼吧。

回到最一開始,網頁是由 HTML、CSS、Javascript 組成。既然 HTML 檢查完了,那換CSS 和 Javascript 。這題也非常好心的將這兩個的檔案以連結的方式夾在 head 標籤內。點開後,滑到最下方就可以分別拿到另外的三分之一。

結語

他這題不過是想考「網頁是由 HTML、CSS、Javascript 組成」這麼一個簡單的概念而已。而且其實,就算看不懂 HTML、CSS、Javascript 也沒關係,我們只要會找東西就好。所以我也才會說看完writeup 後,會有一種點點點的心情油然而生。




Bookmarklet

這題的含金量比上一題的還高。

想解這題必須要有 HTML、Javascript 的先備知識。

讓我們一起看看這有趣的一題吧。

題述


  • linkpicoCTF - picoGym Challenges
  • Description:Why search for the flag when I can make a bookmarklet to print it for me?Additional details will be available after launching your challenge instance.
  • hint1:A bookmarklet is a bookmark that runs JavaScript instead of loading a webpage.
  • hint2:What happens when you click a bookmarklet?
  • hint3:Web browsers have other ways to run JavaScript too.


他說他既然都已經印書籤給你了,你為甚麼還要去找 flag 呢?

很顯然地它的 flag 應該是藏在書籤裡。

再來給大家看一下網址開起來長啥樣

raw-image

下面有一串 javascript 的程式碼,而且往下滑還發現,題目非常好心的幫我們把 flag 給解碼出來了。(應該也是因為不想讓我們直接看出答案OwO)

而究竟這串程式碼和書籤有甚麼關係?又我們要怎麼開啟他所謂的書籤呢?請繼續往下看。

開始解題

其實這題有兩種解法。

第一種解法是我先想到的。

我就不管甚麼書籤的。反正我只要想辦法把它解碼出來的 flag 給印出來就好,所以我就開了一個 HTML檔想要做一個簡易版網頁。之後我又上網查如何將 javascript 的變數傳給 HTML。結果發現,其實我們可以用<script></script>將 javascript 的 code 整個包起來,再將其直接放入 HTML 的 body 裡就可以執行 javascript 了。

長成這樣......

raw-image

最上面幾行雖然長得很令人退避三舍,不過那只是 HTML 的標準框架。只要在 vscode 的 HTML 檔裡打一個驚嘆號在按下 enter 就會咻一聲的碰出來了,或是去網路上找一錠都複製的到。

中間被<script></script>夾住的就是我們今天的主角啦。我們只要將網站中的 code 複製過來即可。

運行起來後我們就會開心的拿到 flag 啦ヾ(≧▽≦*)o

第二種方法應該算是正解。

因為很好奇其他人是怎麼解的,所以上網找了一下別人的 writeup,發現到了第二種神奇的做法。

  • 開啟 chrome 的書籤管理員
  • 新增一個書籤
  • 名稱隨便取,網址內貼上 javascript 的程式碼
  • 在新分頁開啟後就會看到 flag 了
raw-image


因為我已經新增好了,所以我這邊展示出的截圖是編輯書籤。

大結語

其實這篇昨天就已經打了一半,會拖一天才發是因為昨天去練機車練到太晚來不及發😅幸好今天機車駕照拿到了,這篇也打完了。(灑花灑花o(〃^▽^〃)o)

最後祝大家行車平安❤️

內容總結
picoCTF平台
0
/5
avatar-img
16會員
105內容數
有別於未付費的文章,專題區的文章偏向愛情短篇小說,較有戲劇性,篇幅也會較長;未付費文章會偏向極短篇小說,並且以類似散文的手法寫作
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
周濡墨的沙龍 的其他內容
感覺再不寫些甚麼筆就要開始生鏽了,以這樣的心情決定開啟 picoCTF writeup 系列。 也是因為最近生活過得平平淡淡,沒什麼值得和大家分享的,只好來寫寫我覺得有趣的 picoCTF題目 writeup。 這篇是這系列的第一篇。希望自己可以用簡顯易懂的方式帶著各位享受尋找寶藏(flag)
5/5picoCTF平台
感覺再不寫些甚麼筆就要開始生鏽了,以這樣的心情決定開啟 picoCTF writeup 系列。 也是因為最近生活過得平平淡淡,沒什麼值得和大家分享的,只好來寫寫我覺得有趣的 picoCTF題目 writeup。 這篇是這系列的第一篇。希望自己可以用簡顯易懂的方式帶著各位享受尋找寶藏(flag)
5/5picoCTF平台
本篇參與的主題活動
2025 年,從分享精彩的 #Myvocus2024 年度回顧開始! #Myvocus2024 年度回顧通知已送達 vocus 的 2024 有超過 12 萬筆訂單、35 萬則以上的內容、16 萬以上的新會員、4 千+ 筆數位商品訂單,5 萬 + 則貼文! 曬曬你的 2024 vocus 吧!
2024年算是回歸到相對健康的生活作息,成功戒除酗酒和混亂作息的狀態。曾經以為碗美作息竟是自律神經迫害者,幸好都成功調整回來!下半年更開始做更多設計、創作,來回之間獲得許多想法。 2025年想讓自己回歸「年輕狀態」不僅僅是體態部分,更重要的是「心態」要維持在學習且專注在自己的進步,將心態往自己擺穩
  從開始經營方格子到現在已經十個月了。說實話,這是從我淡出巴哈姆特四年後,再次有意識的經營作品。   雖然從事小說創作,我卻是一個只要講述自己的情感就會有些嘴笨的人,心中有太多太多感受,很難一次表達出來,只能再次說,非常謝謝大家的支持,沒有你們,我走不到現在。   今年是很特別的一年,我的沙龍
剛剛看到一部非常有幫助的影片,整理了十五個事情,是新手奇幻小說作者最好要避免的,我邊看邊點頭,覺得這影片太有用了,因此想要來整理分享一下:  https://www.youtube.com/watch?v=fo40-m03WVg 以下是身為奇幻小說作者,最好避免的十五件事情: 1. 設定狂
2025 年,從分享精彩的 #Myvocus2024 年度回顧開始! #Myvocus2024 年度回顧通知已送達 vocus 的 2024 有超過 12 萬筆訂單、35 萬則以上的內容、16 萬以上的新會員、4 千+ 筆數位商品訂單,5 萬 + 則貼文! 曬曬你的 2024 vocus 吧!
2024年算是回歸到相對健康的生活作息,成功戒除酗酒和混亂作息的狀態。曾經以為碗美作息竟是自律神經迫害者,幸好都成功調整回來!下半年更開始做更多設計、創作,來回之間獲得許多想法。 2025年想讓自己回歸「年輕狀態」不僅僅是體態部分,更重要的是「心態」要維持在學習且專注在自己的進步,將心態往自己擺穩
  從開始經營方格子到現在已經十個月了。說實話,這是從我淡出巴哈姆特四年後,再次有意識的經營作品。   雖然從事小說創作,我卻是一個只要講述自己的情感就會有些嘴笨的人,心中有太多太多感受,很難一次表達出來,只能再次說,非常謝謝大家的支持,沒有你們,我走不到現在。   今年是很特別的一年,我的沙龍
剛剛看到一部非常有幫助的影片,整理了十五個事情,是新手奇幻小說作者最好要避免的,我邊看邊點頭,覺得這影片太有用了,因此想要來整理分享一下:  https://www.youtube.com/watch?v=fo40-m03WVg 以下是身為奇幻小說作者,最好避免的十五件事情: 1. 設定狂
你可能也想看
Google News 追蹤
Thumbnail
2025 年,從分享精彩的 #Myvocus2024 年度回顧開始! #Myvocus2024 年度回顧通知已送達 vocus 的 2024 有超過 12 萬筆訂單、35 萬則以上的內容、16 萬以上的新會員、4 千+ 筆數位商品訂單,5 萬 + 則貼文! 曬曬你的 2024 vocus 吧!
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
手寫版,有寫錯或看不懂的地方,都可以在底下留言給我。 感謝!
Thumbnail
如果想要「快速寫作」,絕對不是只有打字速度快這回事,而是要從「如何有效率寫這篇文章」開始談起。
Thumbnail
最近幫忙弄了貼圖, 寫個心得來小小紀念一下~ 不囉嗦,先上圖~
Thumbnail
記錄實戰經驗的重要性在於,它可以幫助我們解決一個典型問題:熱愛學習卻進步有限,難以解決實際問題。
做好一件事其實非常簡單,但是對有些人卻非常困難,作者這裡分享幾個小技巧。1:我會先將步驟先想好,這樣不僅不會手忙腳亂,也可以提高效率。我如果要寫功課,就會先想好要先寫哪一項功課,我會簡單的功課和難的功課交錯寫,才不至於太痛苦。 2:你要將會讓你分心的事或物想辦法解決和想辦法克制。像
Thumbnail
總複習時間,可以使用畫一畫時的作品來考考孩子,難度比較低,孩子會比較有自信
想逼自己練習有想法就說出來,不要每篇文章都精雕細琢,產了一個月,寫了幾千字才上架,這有時對讀者負擔也很大 此外,有時候靈感疏忽及逝,想把這些神奇想法紀錄下來,讓讀者看到不一樣的我 不知道可以撐幾天,就先來試試囉!
Thumbnail
2025 年,從分享精彩的 #Myvocus2024 年度回顧開始! #Myvocus2024 年度回顧通知已送達 vocus 的 2024 有超過 12 萬筆訂單、35 萬則以上的內容、16 萬以上的新會員、4 千+ 筆數位商品訂單,5 萬 + 則貼文! 曬曬你的 2024 vocus 吧!
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
手寫版,有寫錯或看不懂的地方,都可以在底下留言給我。 感謝!
Thumbnail
如果想要「快速寫作」,絕對不是只有打字速度快這回事,而是要從「如何有效率寫這篇文章」開始談起。
Thumbnail
最近幫忙弄了貼圖, 寫個心得來小小紀念一下~ 不囉嗦,先上圖~
Thumbnail
記錄實戰經驗的重要性在於,它可以幫助我們解決一個典型問題:熱愛學習卻進步有限,難以解決實際問題。
做好一件事其實非常簡單,但是對有些人卻非常困難,作者這裡分享幾個小技巧。1:我會先將步驟先想好,這樣不僅不會手忙腳亂,也可以提高效率。我如果要寫功課,就會先想好要先寫哪一項功課,我會簡單的功課和難的功課交錯寫,才不至於太痛苦。 2:你要將會讓你分心的事或物想辦法解決和想辦法克制。像
Thumbnail
總複習時間,可以使用畫一畫時的作品來考考孩子,難度比較低,孩子會比較有自信
想逼自己練習有想法就說出來,不要每篇文章都精雕細琢,產了一個月,寫了幾千字才上架,這有時對讀者負擔也很大 此外,有時候靈感疏忽及逝,想把這些神奇想法紀錄下來,讓讀者看到不一樣的我 不知道可以撐幾天,就先來試試囉!