# 一天一CTF > 第一步是你必須說:「我辦得到」 — 威爾.史密斯 > > 二十年後,你會懊悔更多的是那些現在沒做,而不是真的做了的事。所以,拋開繩結,駛離安全的港灣。掌握好你的風向,勇敢的探險,夢想,發現吧。 -馬克.吐溫 ## Day1 2025/11/3-picoCTF Flag in Flame  先解開base64  得到這張圖片  > 很重的ai味 然後~~辛苦的~~丟給ai解碼 flag就有拉 ``` picoCTF{forensics_analysis_is_amazing_c75dd08e} ```  ## Day2 2025/11/4-picoCTF Inspect HTML  首先打開網站  然後右鍵-"檢查"  把`<body>`展開   now we get flag! 右鍵flag-copy-Copy element  (記得去掉!--和-->) `picoCTF{1n5p3t0r_0f_h7ml_1fd8425b}`  > 最近都先挑簡單的先做 > 我怕我做太難的會爆 ## Day3 2025/11/5-picoCTF DISKO 1  先點[here](https://artifacts.picoctf.net/c/537/disko-1.dd.gz)下載檔案  打開之後發現檔案是.dd檔  在這邊卡很久,直到看到了[這篇文章](https://0xodinx.medium.com/picoctf-disko-1-writeup-2730afc8f0be)  行,我試試看 打開kali虛擬機,把檔案傳過去(或用wget下載,用gzip解壓縮 `wget https://artifacts.picoctf.net/c/537/disko-1.dd.gz` `gunzip disko-1.dd.gz `) 先切到放檔案的目錄下  確認一下檔案類型  然後直接讀字串  get the flag! `picoCTF{1t5_ju5t_4_5tr1n9_be6031da}`  > 炫耀下桌布btw >  >  ## Day4 2025/11/6-picoCTF Log Hunt  先把log下載下來打開 第一行就發現有flag的一部份  這就代表說有`INFO FLAGPART`就是flag會出現的地方 按下Ctrl+f把INFO FLAGPART貼進去找(或丟到linux用`cat server.log| grep "INFO FLAGPART"`) 我用linux抓出來了這些字串: ```bash ┌──(kali㉿kali)-[~/Desktop] └─$ cat server.log| grep "INFO FLAGPAR" [1990-08-09 10:00:10] INFO FLAGPART: picoCTF{us3_ [1990-08-09 10:02:55] INFO FLAGPART: y0urlinux_ [1990-08-09 10:05:54] INFO FLAGPART: sk1lls_ [1990-08-09 10:05:55] INFO FLAGPART: sk1lls_ [1990-08-09 10:10:54] INFO FLAGPART: cedfa5fb} [1990-08-09 10:10:58] INFO FLAGPART: cedfa5fb} [1990-08-09 10:11:06] INFO FLAGPART: cedfa5fb} [1990-08-09 11:04:27] INFO FLAGPART: picoCTF{us3_ [1990-08-09 11:04:29] INFO FLAGPART: picoCTF{us3_ [1990-08-09 11:04:37] INFO FLAGPART: picoCTF{us3_ [1990-08-09 11:09:16] INFO FLAGPART: y0urlinux_ [1990-08-09 11:09:19] INFO FLAGPART: y0urlinux_ [1990-08-09 11:12:40] INFO FLAGPART: sk1lls_ [1990-08-09 11:12:45] INFO FLAGPART: sk1lls_ [1990-08-09 11:16:58] INFO FLAGPART: cedfa5fb} [1990-08-09 11:16:59] INFO FLAGPART: cedfa5fb} [1990-08-09 11:17:00] INFO FLAGPART: cedfa5fb} [1990-08-09 12:19:23] INFO FLAGPART: picoCTF{us3_ [1990-08-09 12:19:29] INFO FLAGPART: picoCTF{us3_ [1990-08-09 12:19:32] INFO FLAGPART: picoCTF{us3_ [1990-08-09 12:23:43] INFO FLAGPART: y0urlinux_ [1990-08-09 12:23:45] INFO FLAGPART: y0urlinux_ [1990-08-09 12:23:53] INFO FLAGPART: y0urlinux_ [1990-08-09 12:25:32] INFO FLAGPART: sk1lls_ [1990-08-09 12:28:45] INFO FLAGPART: cedfa5fb} [1990-08-09 12:28:49] INFO FLAGPART: cedfa5fb} [1990-08-09 12:28:52] INFO FLAGPART: cedfa5fb} ``` 再把flag依照出現順序拼出來 Get The Flag! ``` picoCTF{us3_y0urlinux_sk1lls_cedfa5fb} ```  ## Day4 2025/11/6-picoCTF Vigenere > 忽然想多做一個  `cipher.txt`: ``` rgnoDVD{O0NU_WQ3_G1G3O3T3_A1AH3S_f85729e7} ``` 已知key為`CYLAB` 那就用線上工具解密! 我使用[ctf.bugku.com的解密工具](https://ctf.bugku.com/tool/vigenere)來解密  解密之後就有flag啦  ``` picoCTF{D0NT_US3_V1G3N3R3_C1PH3R_d85729g7} ```  ## Day4 2025/11/6-picoCTF Vigenere > 忽然又想多做一個  `readmycert.csr`: ``` -----BEGIN CERTIFICATE REQUEST----- MIICpzCCAY8CAQAwPDEmMCQGA1UEAwwdcGljb0NURntyZWFkX215Y2VydF81YWVi MGQ0Zn0xEjAQBgNVBCkMCWN0ZlBsYXllcjCCASIwDQYJKoZIhvcNAQEBBQADggEP ADCCAQoCggEBAMCkf11rmV8rgqPvC2ZiPA6W+5RfOTwU6u3WpGvLA+2YFzocBPut aATTxTPB+uaN2ZN3Z5J2CTFGmPzI4sUQfSqhZGuAqbfMyDDR8pRswmIYVJ6s0Apc Toi7H8m3IShSbeE0pZUSIJpbK1a7V6lJqgwFMDI1qrgNhGgZaMA/l+d2J0vC3EYd AijwSs8APcp6woWbFGYwdw5KaBsjn23oVz2G4h3/TmdB5g5e6Oq+kgi38NEpRDS0 ylXo9mUko3FqS4I6y9gOtDEI4uZaCJZuXHDmBpqZ04MfXbIVlHjF9NMOjDvXLonN 650oaANBm4bhBlgid0Fx48Z36tbtAVivZEcCAwEAAaAmMCQGCSqGSIb3DQEJDjEX MBUwEwYDVR0lBAwwCgYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHZx6h9r G/SE7RCoX6ndk5BOJprRiHpxOqPLAWcDyKHfStln0/HcQZzIrRVRsmoHiOmch+md PBA1b+M5aj+3BWtPR9jOY4vht+ZmHAKa0WfQxwb2dBxsRPKTTDea0wN2u8BHLlSM PbWPNuz+TKySL41xfwFuM4VN/ywn58GTvdb7HXgwNZCGgo2N1WhRq/dBMiagXMah yb6gX4erugCu61T5tyD80hgsNBjaqyIdy/whRfC/Pmn3QHmdkqB5ZCPezwb2OLm4 5RDGv3WOB5q0BofoUGhVq757QE8qhL3oTvV2WlLoi3YWaZkJMCeR3vnH92cKC1Ov FxdQuLOH8GMvl7U= -----END CERTIFICATE REQUEST----- ``` 先讓我們知道[什麼是CSR?](https://www.ssl.com/zh-TW/%E5%B8%B8%E8%A6%8B%E5%95%8F%E9%A1%8C/%E4%BB%80%E9%BA%BC%E6%98%AF%E4%BC%81%E6%A5%AD%E7%A4%BE%E6%9C%83%E8%B2%AC%E4%BB%BB/) 我在網路上找到了[這個工具](https://www.ssl.com/zh-TW/csr%E8%A7%A3%E7%A2%BC%E5%99%A8/) 直接把csr的內容貼上去按綠色的就行  flag就在`Common Name`這裡 ``` picoCTF{read_mycert_5aeb0d4f} ```  ## Day5 2025/11/7-picoCTF morse-code  [檔案](https://artifacts.picoctf.net/c/79/morse_chal.wav)是個音檔 我直接丟到https://morsecodegenerator.org/tw/morse-audio-translator 上去解  再把所有字改成小寫加上_ `picoCTF{wh47_h47h_90d_w20u9h7}`  ## Day6 2025/11/8-picoCTF caesar  `data.enc`: ``` picoCTF{mbyccsxqdrobelsmyxigfknnoo} ``` 我使用[dcode](https://www.dcode.fr/caesar-cipher)解密  看到cross的有意義字源我就覺得這是flag ``` picoCTF{crossingtherubiconywvaddee} ```  ## Day7 2025/11/9-picoCTF rotation  `encrypted.txt`: ``` xqkwKBN{z0bib1wv_l3kzgxb3l_949in1i1} ``` 使用[decode](https://www.dcode.fr/rot-cipher)的`Automatic Decryption`功能   ``` picoCTF{r0tat1on_d3crypt3d_949af1a1} ```  ## Day8(Day9補) 2025/11/10(2025/11/11)-picoCTF SSTI1  這個網站要用到[SSTI惡意指令注入](https://www.cloudforce.gamania.com/tw/news_detail?type=technology&id=285) 然後根據網站上的每個指令依次測試  我在網頁上看到,我覺得可能是這個 試了半天沒出來,所以我查了一下 找到了[外國大佬](https://medium.com/@jojolucky221/picoctf-20250-web-ssti-1-56b85ac6b278)和另一個[佑仔](https://hackmd.io/@YuYutw123/picoCTF_Web?utm_source=preview-mode&utm_medium=rec#SSTI1)的解題筆記  他們都先使用ls來檢查內容 `{{ config.__class__.__init__.__globals__['os'].popen('ls').read() }} `  然後使用 ``` {{ config.__class__.__init__.__globals__['os'].popen('cat flag').read() }} ```  get flag! ``` picoCTF{s4rv3r_s1d3_t3mp14t3_1nj3ct10n5_4r3_c001_4675f3fa} ```  ## Day 9 2025/11/11-picoCTF Ph4nt0m 1ntrud3r  先下載安裝[wireshark](https://www.wireshark.org/download.html) 打開 file-open  選擇檔案的路徑 打開會長這樣  然後呢就爬文 爬到了佬的[文章](https://hackmd.io/GXc9gzpARW6fNj1TtmUqvg?view) 他上面提到用時間排序 因為題目有一個hint是Time is essential 接下來逐個找出來(依據佬的筆記大概從 Time 0.002212 開始會出現 Flag 經過編碼之後的東東) 然後就轉碼 ~~flag:`picoCTF{1t_w4snt_th4t_34sy_tbh_4r_e5e8c78d}`~~ > 說實在我根本不會抓包解包 > 阿結果flag是錯的 > 有反轉 > 我找到了[外國人的筆記](https://medium.com/@tolentinojesusanthony/picoctf-forensic-ph4nt0m-1ntrud3r-1d79fed7cf0d) > 他寫的flag是這個picoCTF{1t_w4snt_th4t_34sy_tbh_4r_f318db22} > wc? > 還是錯的? > 真要我下手啊 >ok我解出來了 > 包從 ## Day10(打贏復活賽)2025/12/3-picoCTF repetitions   直接解碼 一直姐 姐到最後的flag ``` picoCTF{base64_n3st3d_dic0d!n8_d0wnl04d3d_dfe803c6} ```  ## Day 11 2025/12/18 picoCTF Scan Surprise 掃描驚喜  `challenge.zip`: ``` C:. \---home \---ctf-player \---drop-in flag.png ``` `flag.png`:  用線上工具掃描  ``` picoCTF{p33k_@_b00_0194a007} ```  > 這也能當CTF... ## Day 12 2025/12/19 picoCTF information 資訊  ```cat.jpg```:  我一開始用Hex工具找(想說可能藏在hex)但沒有 後來用 [Online-Metadata](https://online-metadata.com/zh) 查看元數據發現怪怪的東西...  這個看起來像Base64(按照picoCTF的~~習慣~~),但他沒有關鍵的== :cry: 那就試試看吧  是耶 耶拿到flag了 ``` picoCTF{the_m3tadata_1s_modified} ```  ## Day 12 2025/12/19 picoCTF Corrupted file 檔案損壞  這題是看[medium上大佬的文章](https://medium.com/@cozyxss/corrupted-file-picoctf-writeup-1e25eb2bb182)解的  先使用[hexed](https://hexed.it/) 查看文件的Hex值  有一個JFIF,那他頭會是什麼呢\? 會是這些  把它改好 存成jpg `file (1).jpg`:  ``` picoCTF{r3st0r1ng_th3_by73s_2326ca93} ```  ## Day 13 2025/12/20 picoCTF Verify 驗證  先連上伺服器:  然後先使用`ls`看有什麼檔案  然後 `cd files` And `ls`  然後開始驗證sha256`sha256sum 02kLdPvr 3HWGffFE 6JGob933....` 你會得到這張表: :::spoiler ``` 87c3b0d3c1ed24251e37b0751349b306686f2a0251a3faafeb0e901bab96b26a 02kLdPvr 67ca9b396a77d563d66b9158da40f3e4e780e5b244cb65e77722ccc34165a804 3HWGffFE 9d41432c483dd058dcb3f5b3702946a27d5179aeb4fd97b9fb58397ad7b4ce21 6JGob933 e4ad546bc827ece358ef790eb2c4c1a55a08bbbc2cd6c78faa0d822f7c4da3cc AXwbPGqz 157221d44557474eb5c011f6e85d2b0d41b816483d85bc56d2b49b55582a75ed F7pJKgt3 a70750f90599268a714fd82a9a910b763db2ece22567b9c3dfde18726c6a58fc JZuYuOle 63bbed35df199e774e7861d14a5abad3d08f1c2209fc9f896bf97cd5a9a93aae OgbJmSsl 93d57ad55f4e2b269360de5778c0810778981dee6b17d9b13ccba84546ca9af2 SliwhkVP 1ef57dcac260991397252b5da02efa8f1504494baef9bcd7d23bbc7797f4f88c XmYppXhk fda3a83becb1507ae394d918f8d2727f4be3c4b54bf4c83e5bd04b37cb21aea7 bSkjXxrA 6edfd5bb980fee3a9e90219d5d87965d9de3166d6263b40c6ae6b558e378111e fM4Y8XlN 22d08fe3955ebc370f9019c2453409fbc550c98b20b3a9def85c33fa19f4d7b2 k3Je1oZv 5505c750729ed42de1a87f64b68dffe3d476f9c32aa1cc943e76690755c80009 pbXSC543 b874d11a9a1f8877450b87591deb1b1c4ff080dd2896ca6f7e72acbec9f6fe3c uVGzmmri 6219489551ec8831730fc42c70abdd04a16776183c44c62fba833943f3645ff0 yRSmctoR 1cceaf56a71d4e73576bef1e02a51263d5b8df747fa547c2d64c9ec6a5ef99dd 0AEMwSHP 38e8f08ab00599f91771494a3476c676463d7e686b2fd978dca699ba548885ad 3KQWpDpt 4fac90376a7d47bad4240067a8ae5eb6f7f00ad4cf02a00bd2e48540d69d66c4 7GdIoG6L 40d8639fcba4cb7e9ee47c9faea81e76f7d4ec6ddc6de8e2010632e8d8eee546 Ae01ONEX 8b8027a9eaae34d31f95ed70fafa9a7012fd5bb488708ed53a9f1b015ad45daf FA1DL0lH 53583b95b87644073b3f17b3e31846ae68d6f2ea5732f047afeeee452317399a K4w4LSpK 46039a97d82ed9b22c793a7908cf5f904a2252eb53116283d9c24a2ff8019f41 OvH6KubA c8b1bea17cc254c984047f98a6943df741ff2077d427587a6c65c9ddaf42e5d1 SuTmtwHT b4c9eacca6e5f68024521acb56caae4b289d44fd0d310d3d5ac353fa452d5cf7 Y9apvJeb e7c0a3ed6e9db9c3b3fa856ef0ab4bb4e0bf49b90ae8e3420ab600f992bb4d21 bXmTLFnK 48a4314e1d00be7eff63d4a2fbda29fb479e3698652aac68896ef5b9ce9b922c frJix6dy 823db2220a03c17f2b37a15b861f667a457e1e25403d9f2d01976aceb3493e84 l4aPZsIN f787bd5c22e33717f8d90da57e2158032a5df0c43853700ed33b1d94625bbd31 q2mcPs3c 2f71b22c3ac3d84081a92eaf7b59a46a221c3c9899fd252a58fe0699f69ef22d uiBoxr24 656376aa2c2e825866edc436b89e25ac5a21a8f2861702f3478dcb7691077903 ybQ7iIWc 6606c707cf5d145c738ccc7b5f6a404f40499ef2e3d21c81ce8671d701f06428 0QBK0M73 26b4f4f89ad41f7eb348084add3f9bf7a5baea2500ee47ee57aab7b471d2a233 3RwrWxAh 7ce150de6af51bbb4a19baeb501171ee3564784209bddb336ed29b3b12e3574e 7M36N0ZG 1c9666e507482e499e826d19dd2b7814d4f709325109a28f17196c52b16b252a AfqV5hAX f8a39b266528bd3e01ee4ed50d544f49ad819df7275621e6301282c3a293c2ac FaSiQOUR 641bec9bdb770bda0e92ba713ff5fe32b939ba16417286e95214ea6685325a20 KM1rOvYX 25e2d42de09bac8adb698638756c30412028bf2c4428c2a4dae4e95d10056d75 P0pMREh2 b3a745060d75161684bfe1cbf9bf4ab1a37d73af06867158320bd696241a89f2 TAh3haNF f7345e10efa04712bc9c097fbf23822eae117f0b037159d6a625bd12ddcebb43 YJZwL09m 4eff44752ec8f15bc425835870e5bd0981592f50e511ebd8911b9decb64977c7 byaxGEzl c83798cb55b52a3aff7900473a7a7433d0ae4cb42d72ff4173df4acaafdd2e37 fzjMwVlq 8bf76d372095d248547a60658a86e2930827cef380b240c7ca20a19818184ce0 lCWOa2m6 70d1cc2066e5c152412866874e9bac892533a2a89044793aef0969e3b5b791a2 qhTEo0LL d91b84b4b13b04cb11e2fb03a1a1a35be6e2b5ce10b0b34fc36ac4cc3611c397 urhbGMnd c2099aa04d7b40bb64227e4fcda991e2b75a71616deda55f7af562b3fbd5c55e z8QLAIjY 7c18ec256d95af21dbb8aa8b7d72ecaee7debf86892230d9c70c1e122c56d796 0ReLqo7l 497f6e49bb144e85fd61ea03203535e889f931eab00e791f18b5f2ed8039fa4b 3UI1Q3Im c6652fec5c49fbbf08d0dc26172f9f453941b54bb24fbed3e68726458ae13734 7S05biBB 5bcf0bec2d377659b6bc0293e9d3f708dcde86005418edfa830996fde5723a71 AuXnIN8I 185f93b8ae132b36852afede2d0585c0e202330d007e6d3eadee4a1bca494506 GBMBtUcG 8516450cd8a2c1ed26f15fcdd48ce78e5cf4fa7b10620600ab2bdcfbe6dd901c KRxkl4ki 3497fc8b0d4ed0570bb7bab0f435255d5822625bfacdf1c9f006e30ff939ae82 PK3nRKAh 8800bd39fbdb26f6e3bbf0bbf67ac5d5ca8527fe5f3c307cbd508ea054c9a031 TIC1KArZ e5878ad8affaa6cdfeee8c1970fcf6c356d50614eebe103e6ccf148566bc2574 YXeLAbOj 51588d7aef92d2e00a3ba0010bdedbb992984f1d198187d9111ce9733afa9afd c5K8wpvT cd14ad97398128bb3f3624b9d81d49ea514f12092eee0f532e5a8f8d8f1518c0 g33i1myO 31beeb9ce36db82f28a4b2f8702fb41e5a36d5399e5e30d236e782435634c532 lY9YUKSk b2864a8afbfed55f3244572a0940b3888c35d1afba85a19ab4e7f68bbf3e8560 qxtRkCQq 9d8ed791b142d700b470ef60eb19ddbeceae88b1eed9a71a12d7b71214ca79cf v7gF2ZIR 87ceec22eb23cd8dbe6b727807153c614e14710ee1b86ebf839837410db961bb zKjekGtU 243a3167ec727432c5c588487848805f88562a459f0f52d8fe5c809b4e3961f8 0pYtGDyN 2b2077661276508f47c2238573c9afba869b7d7afb01252727d8868475d3d0d8 3XFTF7vi f9684f3b3118811f5c85374b178594831716598e443cc6d477cb169a6a0f05ed 7SXF5dDA 41a5529a5f005c4900ea42581a15a8047969650dda0609b11c5b6586e359c68b Av9IEmci e92c298e69e07ca395f7e7871048be6a3e5a89bab1005454ed2dfca91a6de95e GGpU931s a6c1f6ccf857d0e503fd8b700292ede9e3988bdebb39288aafc49c0903e0f2d9 KaGA7sxA 27f5073db4545e8df8a3724152cee4cada016a613c8f0d4d328b54c42f16dc7b PVAhaXhI dfa5f44af72b450b88589f714b863c56b7e86bace2895f2156010e2ecfa2af69 TJect2dg 569d19491c54d272ffd4298497b5a9770896be6382101109bffd0b73b63eb91f YmQKA23p 87f32602546e3ee981db881b24135755f16c2dbf740c7a0d83bc3f33be3e7fea cAehfago 54b08976ea67826a68df7c16e7db1c3b6478351dd7cfac57a2d6bea4b8146cde gNe3d0tj 2f630fb284aaf5e4f6f52031834b590e71b734c782a82b8d72d88b83c4da2229 lpgH0BeK 7d199d5bd3fbdcc98dcd2ac2aa74b4cd8fd3d20edb85ccb92b130e2c45728125 r0zVMZkQ 22811aaef1d52d627f9d50e0b45cf9ca0f9c3ef119be63074c16ae51110f45ff vJ3qPWEu 9910658855ed1d8dc29473f860a3442df235593e96d80dda3a51776a4b9ee793 ze9Qihpg 8b17e0e68b9508240a82b7606a9ada765d101e3ccca24a401086a1110f10e936 13eD2Klj d63f877474df655f49b1d93806c18483f46b39f589135a7ccd623ed88bef296d 3azP1Vr5 455040106290ee3fe07446351d92a12ad684e0c2e6a06ab4cf822481e95bc5b7 7XpL7kA2 7a909ad52a38bde6c28501a6875df0fc38c8b82c8931559729fd36b361768b51 BVQMsUMN c44f5815aeed931fa385f02b292850b6daf770ad44858c27c55393224c715321 GTH1LeLw 0598c2535e1fc3d03f2c892ff83cd676db8b2dfabd4be6d52f276d4d9bb87f53 Kopd5uAS e178e47068133e1cc218b9606de9afa3abfbcb09374814f6172c7595b2f9e69c PbCHfm8l 1a88389eed7357d18148c477dc3565816b1d7449b2a1281d6b323c310e28a3eb TSGfXer8 dd9c5e8a0d47f17d0c00aa634c66f98eb7b879d12b46825ce6aa71d322c58857 YoOZ5qVn 60d1fb2e4aca2163d76ab396fda4adf23b79269c44dc991fc1c154be85937f2a cAgx0hQ8 623b335271448a2fac7a26d73a01493a44efc893be975b46b8585df36cec5d8f h6P0bHfg 91942183eb850b085e52e516399f7e713d805b8afd679934b6802ebe3f6a0afb lty8luMw 4b829119a9a6232baf41272a35cecde1f6caac339be427fce2789cd308bec36b raIgZC8T 644d583efc14fc807ebefdf33d64fa6b74991484f8dcae2cb26d560e7886610c vMdtOisa 6f8ca03d84f8db4348398d4c57736951c28b2872ef6f918cc4aa03bae67dca3d zfFqIJrW f60eeacf11219c38754b874863e3364d9a90c854f84972ea03e4bb125276b42c 15s8svF3 e33e177eef2c1a5dd0cae42ea2dbecfb66255c16340259186f055ba618b88418 3bwissRA 328cda47e2de47b32cc4f24f3b4f68172fab527d6d1e5face87fc2799dcf9d13 7ZEsnWZx 2e6bc7379a67c4263a0a7f4bd7dbdab97b4ea565d707807cb708084666032e04 BYWVMQ8G ae727780ea058767d44fa1fe53053015b2f3d335eb60baaa424e008b5822f5f7 Giagg0HI e5dc465374749038b2ba5aace9e3081ec6864751bc959d6efc29e535df911f1d Kqq1CiRK e6ddc0e9eb7ee9ba0dc207c451b86430d18539cb521296447e0318fa483b391a PisLwk6C ebb7493a347527408555b4bbb1993eef74f4b2b10eec578d16fb14d4b338f549 TdeDBXMf dc9e3ff877eabdc206dbe9f643dc40743ea6aa18f6140e060478a23d7584686b Yqx2G9d1 933a7b99a8fa56bbff31085ee3d8a460fd0d7c2c1395a14cedfde41560caf15e cBdFMzZa 0ceaebf53132bb9440f2fb92970ba9c3cec286798f7b7fa5076b172e6777f795 hIbQdK4d c344491b0eff8a63926953bb298b2ff433e994b171956b902481d15b8f2aade4 mAZwT81W 6b6ee3b30337f0a6b7520c1658c0ad09f3587081eb3d7724d0051bf5a1672b4e rse22gSC c029b4109b73350dbb76f7f24bb99ac5345cac5342498d1fc87fb5ae6fa40936 vT94qEUU c3366a02b371e9e36ef62ecffffafb99d5e6f380a8ff2c2ada684e3e528c5ec2 ziobqxT9 658581c1008cb4debd37045626d2f4533b926ebffbd47bd6debfa93205c2d918 1BX0cysv fe04a5bb4ebea571df8c206d44f1dfad2634eb0bb112b37afabe104dae8dc270 3llQZxg9 e8010cfb1b4e7823b43e67e66eaf8be3c9f2d72acae9523d35ee9fde81b8a71b 7dnW8EpS 29609f6874e6a0d90f060965236de5316b409e826746abb22a77a27b80875906 Bb0A4ZUF 68f7aa10b412bdc999fe044eda8739a87277c319d08fd329464ae2a7a56aa0f3 Gup9YNYb c18bffa33042d9fa4f602aae7c90d1b30a1bdb5b76e34edbe06c0ee0bbdf8e5a MCFq06DD 7044b1bd6f78ad3a0730a3781613f2c6e410637b24a1b5a5ed7f96d5c96c04b8 PucU9ljB aa1cadfcde7a71b00345bb9d3215deaeec79e00f158fc565cc5984c67c8cd913 Tz1xgD5A d35fd57e1130601d9c29856cd73b450010f6138f7198e5821b6f4acc39f83d89 YrKlF95C af7a53031091f89d38c3571060f1dd55617ee71cd6b1d03223845c9d0f24c860 caVHWehf b96cf609b328b88ab727628fc2b553b517b7f37bc70346977affa67fde226cdd hueXtQsv 8b69b43addce521765ddccfea37187495eeb84f5f5c8116dc6fe27b4211ff6e7 mL2zl8ME 0cd1e34d4adca3f90d94b2334ebde1e0bc2319b33c98b7556d9a38c7d8cd6e8e s1T1hXGi db57334082c1833368719fdda2a899bc8fd1e7a0f3b0d27096ab15e1c4ae4305 vZ9Qc5Cg 1bb3cd55deefe5255c3a9c864853d3ffc7d78fcfa1e80b882636d696129b3015 1QyIAyVK 844e0e8877420c40643077f8eb291bb5df39b0d50481078fec186021435cbdfa 3niXrkT4 ff897449e27281cb7ed245763fa8d73fd8ea0071095d4c250335206c1b43a76e 7e0ugnNi dc5dbe21ff011357c37f684459719d403602b8a4e86b024464d97618486fd583 BjOuTdvt c8072cd658d67fbc73e872f577c87c549fb04a25dd35f24d89c42e545d679a71 Gyn3Qful b1c70e2762730559e1568598f12d7f16c555b06dc86e582c394c52230333bd6c MRW8xKE7 c03b6a2fbe7c87a5fa9e287cb676a9790ed1e4ed3520e6e3f9cede72627d9f10 PyzlgxBl 74260726b5ab74b1c6102bfb1b0e7b29ef9518a7c5d67131bc59598c79bc2703 U6Za1XXb a2dba873a39a63ef8bfd29baed73ecb4133036625f9608cdb62615948a7b2d0c ZS6vNpit 2da7ab6ad6ab342cea8353a75674c2929a4345a80db4f01a93aa15a7db60036c cbKOHVgV 4f6df4fad9fa0304b32dad472c4c4b7a6ebe127ee4289c95d362d3d0daf3a0dd i9nzJ3r6 ac5990afaa7d3e7eab00af758c5c159543b49a50b32567954918870b7b177bb6 miUtTQRm f686a22552f01df89bef392a046ff02123612b26987df9b822f24427d7f26b8e sHWDCVFR 3a50a8f54cd1f0594458e5fbde64a21560c60b953f83ca1d2f82b809678059cf vZXXKL7g 7860e56e6f902c36c647e72a368d766ba83ebe61e197d08e2de42bd5b1aa9bb3 1WzFkIC5 a133863c44b8bc0e541cce1b6a5b4de9cabe1b839c5ef8fdceefc6a0697a35fc 4E42FQrx 7826f92b35f443fa95562c127341f5b3c216123c41a7ecf093e706c349cede6e 7enMn1rk 2eb7bee4a425fc3ebe305322319f53e8d677236c0943e0de5af673b00185b639 CDVB02i6 c6e9af17c752fec2492f39c6db1b9635d934c8175760ef775a954c22ced5ee06 HUGRY61E 71983ce7ae526a69631cff37cb6b19de5020184d48163d17887e9ec147903bce MkEdjeVZ 29f9c223a1d65045492c489d7af46d2b0a5b933094381a1f5ce912772c7f215d QU8jejZq 54d50b90efd6b0f691e34cbb69d49b48aea034381a8604748c12bf4dd19f3e36 W2hZvcID 0498558d284b804a9c2118343d6c4b303d51c91754a4dba104de8f462a62d6c5 ZS7jkTUt 5cf53330aba9cdd47e7e2f1f3108aac315ee3e45fabf7ba05a4f1af322c5af26 cxjAxbcB 0f55abfccfae087cc5ee957cb73d9cb8b8cb087d0f78984bd8d93bf8c15f8da7 iBekBdEx 8e29227a6dbdcf52e800abf249e97ca8ac4907060f55ecec3cd99f5a3b75faad nYMkLfqq c2d13ff8e04507c6276727003de701c035f8961c93cd437ba1eb226db369ddd8 sODASTm7 2a7472392fa03e83a8aaed7382501f298848540fb03e0d56ccd5e7cc9816761a vlXYHLR4 cf8f82e7e63fb26d6bc8680c4d5c7c46bcbdc3bdc12eec5d717c6062da228687 1fPO7Wz1 542a4fb2057febb1fd47b6737a8f6d238bdc8ce45e114a55e7eb4c7135905725 4RWg3C81 69ce6ee1d62f4ad48451cc6f485c6e0b9f2fa88dac92bfe410844cbac3ac988a 7iM83rpT b72e7c53024adf52255240e22f3caaad0d8f6c8f6fc2c09f59bfe6fc147371b8 CLcdCN8f c210b967f2252e448030953a8e49f9addfc7bd4aa2259b06b1e0964be41d714a HUqcWryv 051fee8919ce25c4af4f15d002890a28c1c02a0797ac83e9f4f5982337bb46b5 MoKJFjOi b3524a2fc95f1380a6ffb9fd77957a72107b266f52ce2b2e2542e1e40c3c8d00 QUesl6sJ 073f31f0fb7b393f372a1505e5a5735e3e84a18f708305a7fb4e1cec5fe3491e WJFLBATt 59bbfbdb82686d9f6fce7e47b60955182ba550fc9af841e273dc758f1bf800fc ZTxbKkJG 9365ad6ec42d57a783ac26f8b3b31caf8b8a3103301dbece418824f34d419b52 d5EQVHHc 5f27354f02e5147c4414cf03ccd428fa94019cfbcf3d22beabc3050bd4455bcf ia64o1VA 84220611edf0543f583626df269f0b2c561a096eca96567c0ae519123e9516e8 ngS5ThOq c5833172998cc03ea6e5ccfe6c7ff557f24946b974fca77dba421c6df3732519 sTNxbYIX b4c4693a6461f521d561a07d60861ce611680a92ae810f9266ef0847086cd35d vy3RDHxy ec510cb763998ebe017a5a30c5f89f11eece72a0fa245626a40727ff54d5ab78 1iUcIRwR 881a325685b96bcd76ffbaa48636e97e135199818cd6379a611c42659679f08a 4WsDciyV 9aadbc84cd8e8e5bb5f68ecfbeb873161027f342f15a7239b52b0083cf610d1b 7qVcsxIn ee4cd7abd9904fad8b12c5b00ab8fa68649df76395e375904a61c51812ef8f61 CfZp4f2N 867bb7ab42225150b6bdb7804536729f8ae0354f0f8ae7ef28fb5cab58c44cfd HVhGYkYw 1ea4eb8107331a47f0203e8b21815fe4b511a38c662b4ce96b5c5eb1017f6bbe Mrl2cMHD f7a715df3fb3bb452c4b8af29a21076bcf0b064198a31b38e5daa040db720588 QjfpcKtL 25affd8eb9271463e13f74cdd63003dce0470a63e6a31229ebdafdd4452cb68d WLCnFHkD 81a1304a5559dc90f3060350e3253b8ed7844119dcc637de555f80f8eee9b823 ZXWIGnQR aadda7398725512ac75dc5910a94163fbd29b8a50c4223a9d8c06fa300151265 dGbl67gA dac515417ac42536a6f2cc09432af3a84662ebd30b574248840ed43caef83814 inbE9V4Z 6319463e65d0a0a102b1582544be4f4504b2e40d4e75d0590cbef669084f7adf niAMHayw cbeb404501866928d3e682a583b2611b226976f4ba8b277ffeb229962758ba75 sbuTFkuC c2cfd10715e0618374fd906cb95ef6d6c21266db7aeb9b2213fe94920758d0f8 wH52POYK 4b970ba0b2be8546d30dc4ca2e77baf3b597cf1d573b4b66f681168572372d77 1kzeT7Bq dd81f88c10bea4d2602100f63df1608793ccf7261fd6abb8758a0fa3d62555a1 4YmX8P1z 00b971a42827648a63305ce92a18112b199d1043935f4180b155cf6176044563 7x5Qa3WK 52a1324ac1d035c964dc6e5460ed1ef5b5097977e07483df1bac579c3cfe2ad5 D3FjiyXm 8a21cae12874b809cf04540963572624dc2b30535c302e99499d21f1cc092a1a HkwhoPkp a33699c4c44f57fed1ffbf54b1bc012c01d0855b5bbb3db1ff138e6c44d0c072 Ms5Mvz12 a8fe7f35be118e6611a07b7f1c62317311dde1d00976783546460fe8100acd9a QkF8ZdDf 4c05e355e427358eb7ad0c3c3bb487ddbdd62ce4cf27332f5057cf7e8e44db47 WOHDiZ4q b35084176f9bbf055b5d18a474972b1498d40f87c4e3e94b9e4c21b576146892 a2OU257J 528ba4c7c5c54d43ceff8163fa2d6b57fa4879b4a0c2b94fca9c7e7f1a76cbd9 diVxZXPr 37616b4f4120b3c0b3a2028aab736a32c32a29a45c75a5b4e8c39b3eff48a636 iyKEK5tY f6c4393b9b4b1463b5426919644228acb53886f12a26a171caa4a0c3830bdc67 np9TOAIR c8b7aa1ab6096bc03fcb35e4362d9e160dab549efbe1fe2186b107d24d42c066 scPPxxi7 9a31be04105a29887bab62645b8e1e10690db77a606c74d394af5984ad10cf41 wR9DoLPS 8da597f2a97e225f9944e433b98fb7c41fc1004d6f8fa12245eebb94f7e4d65e 1s9fb01L 16f1f957b34292dbbe235f69bcb2930c5ef9cd97958a1b2ac82c74aa4cf8356a 4lpXJyrZ fba9f49bf22aa7188a155768ab0dfdc1f9b86c47976cd0f7c9003af2e20598f7 87590c24 ae5bc69ebe3d9fb3f478666123383a25471d570e1c1afe4186c1f18d54bc082d DQlu1oVQ 223542642db77dac29ee7fe5753ee5069730c2d51ec7ae7d0b6e9432e496bbf2 Hw4z4pGA c2f8faf5292931f4efb8a941ef4000c49d3ace7be47883794fc9df160552c3aa N36WmSck f73cd546118e8e5dbd289ebc329ed0ca76bea714a02f20de73b70e3066af28b3 RD85xyJi 774cda7254de090a966573d71bb55449c058dd8dcb484c5e023cc2679e8f09de WY59WpIg ce5563451758665b431ecf2a8b4544d1a3359d0cf3b7486f6cb95eb88ca256f4 a5BwxEPT bd121299ac6a5a5a873779f0c04084fb388ae55e4f31313f16b44f4150f13be1 dmc1Epts 8efc2a80f26e4845f49e6d872ef8b7484bd8b685533bdd85e3bb8149ab69c13f j21jebUD c314ddc739e02ab59ec2d01e98c1d9d7fdcd7ce5d99325284f1bdf7b71278a6a o4p7FB5l cc7bc1f65f086424d6091c052f7bfe74d738a2d42c9c770de74ccea4593d78a2 srli5tAs f83a052169e5e576b4a231ebff10638a2f23abe4d8aa12a002f64dcb4feb13e8 whsqK6Xi e2121b753185be8ca8bc6c04b01c708461946deb637632edcef57c3423116c3a 2EHy0UNu 95a809a1598143a50ba620e9387eff3a03fb378be49e9fd2d1209219cdce5cc5 5L6bCEOe 6600f46e718e227c666cdde6c51bce48a659320dae333a7eece342c4dea32a61 8pMqC98d df91b40a5085c2836f69bb1b96a6df3402658c256beea530bc983bac5830f2ca DUx15XmG 62083cbec204552c1d2c8c8c80d8078c49bc50c46e9ab267bb1ff47fc6eb56ce I7ySGmF3 9dfd2a780eeaf3303ae94e7b7d8ec2d787ac0f8fb381637545be0fa8aa8f6ffe NTsSRBdP 04dd8f21134d6b29d037172e279f88315104326e7690e1170a9b546725f7b7bc RGc1b7Dz 40a1d6c6a811809c86053fd74a3605f54fb7d0122c933b85d8d2454096f95ff3 WZcRSCOi dda2048d594389b16999a6718a6553dde4a327ab9eb27bebf12bda8eb95668c9 aAv6C6d8 f42d3abadec263c8f31c91007471357d318b16d74a01f8fe7d20c908fe17a4f1 dzxHhn9S fc850738aa461ec041eaa58d5ac7f649413eea4784340d140a72b51e5b675889 jFn9chPx 70f096e8b04163eff93f91c2b61d1e5cc10b4a3622b90f0ec9ef2eb0e81356dd oNQJCg54 5216c40b2c74beccdab7999a759968f869fd59b1930f280084215396796cc3b2 t1UlIMzc 423f0435ca5567e776ae7e47ca2405861f460f8f3ec348ec12527ac6c7ba9535 wp0CW0xc cf00202ce2298b01b3bca28c8412d4a0c65f0aa62b2676f495123bfbeaea4c03 2HLMOyNv cc6df4c1547d8fb811816b2ad327a9bb253e59d93c62aaeb98939017b6645870 5VDBcjMu 32f8e050dfb066f8078f94faae3cc03ed87fa077ebb67cf775c750f178d6b73e 9E2Ci7r7 b96228d54ad202fa43217b4c2954c8540591505ec3f126305bfc3e785bf45a27 Ds4StPpk 88bc411202ab8c7d4ebc10fac9268101730c9124681673b9988586876bea651e IihMQr2S 7cb005d4842b180bfa8c4daef705dff83c7138895425bab63d67a546e4dd1a9f NULNnaKd c914f8e7f55fe0dae00df7de2f563b94a35bca3d9681007a6bfd4aa5629b3841 RH4yp5nD 79f5d012bffbb470bc99eaf9611eb5ce8c7bd16db0860ede7b13061c67bc1ee9 WjjIvWrX 0a76cda0ad8b2f8708849ea745dc3ffd183f166045d71cb13b077863ed6424fc aCxWJytK adf13189231f1b754b55284fb88ba95ca6ce8b3c35243455f480b26775da5a3f ePMDz1YQ 45afcd76457a40c97f9659a05cd13d0337b0889f42a0ae4070df28d9a1ac153b jGGKUWQ9 a5850db06498c64254d80704ece0d78b2ff48c40654d87d2b51b5214fbff8aef oNq64S7j 7a5937e19c0a1cc4700c75e4cf61bb9750192dfa3a21f87a5efd7144aa560622 t3cJ6Gfp 9111a115589f859c5a6e40b4eb933b09413f03ef3b942826455704ede7929af1 x0ODxbKK 884ddbd229e1d6c068a52593d16482d095d13382bde76ee0d2c48297dcd823cb 2SLddvKm 309f7a2437d77f542d742b4c8433b9760ece3a28e0b06376df6367ddf93055bc 5aE4Zjfg 6398aa8391d0428b8e79ad4e8a1405bb270ac470ebed89c8f265eb0451181307 9LgFu97C fb5a9c8fd90a25c6ba235fe9a628b20d13ce83e4334d03aef3d8493f0b966a9d DxLqi3sV c67d10e1a117c9e19bf6ab0396f9f079440ab9da4472387705afd3dbe94c69b4 Ijh6n9yp 668d9e5e57046173395fb63acdfaa81ff1bf3b95c28ca33e5c775a25ca639e7a NbwekSHV 076208aac8a77aac84099cb194332245b28833d90572a194a34235546daec8b8 RHX0dhSU 143885cf956a038b2431e6a26467cdd1edba02262e34dae76b4f6c8cb15c2841 WpLyF4xC c5d0c0c77f7f587dbe4ff6815e1a9118adcbe883eedd26d211fc2fb4a8490000 aR087rW1 e8ef074570d9f9216d3b4307ad34a6318bfa7e09bdb99690a94e31c86e55842d eqMPkSW0 46d9aec14ab002ed547afd904c0ee870e89e80d0b75c5fde80a12975f86c3bae jQrw8bQO 2c15b651913537f4216378ff7c4a1918801106afb9c5b21dc165935b3866bb0e oX1HkX8C 87b3755499a7f9ec32b58f824497e0430b56caf1fc9a5277e040931d295bbe44 tYVdC1Z0 c3c23fd9f25161a0035e5da701217a503c07c2e319d4ad142582b7f2282c2d35 x0THPKVQ 95378cce58d7294397ea548531b741c930541ec263b1bd493b1a614d2bc5aca5 2y6eiPnY 42973faba65fb71a21f0be92df8ce8e1a125d4cb63040ff6f3c2940a33c91391 5guDO1cS dfd1c4c8ebb2a7182215628189d6d9e2f94442851587c67449bbbb35e59a6fe2 9hbn5BeA 403f37e76707172160f04ed6a9504577ae21a64566c6726513f34d50f822e691 DyULYdws c353941de39d0f499f8209894b87271c686f9ed24777d6e9b8597e2fcecca2c7 Iqbw9pQz 8e162fd2690eec9cf078f73e3d5b69dd5cadacc1445cda4200c58954ef50657d O5vpRSXk 95637288a9ab3da1ce9b8cfa0d94113130fc3a9aa6b4ad98997f564bc1d86850 S7zBjDOu 18ebedda8b2cb23c4654e46952279b1baa55044bcef4826605856c060d77ce89 WruPiHQS 4fd79cb8de09d7442630f056b2f53c96eb69697979e5c1da0b634c5fc56e4ae2 b9BDTW02 90df23c896109b9efe024c5db6a6e0d86baea53ac94c9b0dedbfbafa38b8249d eyrV73UR a0733685ed7b4ac960c93b436bfe0ed8d7951bc4e7c36e88bce9e11c440ff88e jS1LPICH 007a2a95c38ecbc60d4397ea23e78d80f66df0fdc1ab6da3bc40b946a220ec72 opYpNJ2C 37519abebb056c68fd80d906dd14156640b71699b908c76bdabb711daf646230 tqcK3Nrs d412711f9b1b3a52603441c833d6624e27f51a9b80e6cfc6379ab257dfb9a08d xPX9SADx c422793ffec6bb8b5602ec5a7ae05abd8761fd9479903ab863379607920ed104 2ypuxhr6 507bd8c2cf6263f43e12316ba1540541f4457a061c667397a24ab47447e6851e 5oxXh5Er e0d7b24c4d84891c1fc8f3968911e5932e80b55d709b221d480bd176ac7fbd98 9twFwHiq 4e6d2443841f31671acbb9e5b7c35a0c02a5075b9b325d79179b7e2b6b79c2e3 EI5Rua6h a4728e5d090507ee411759bbcf3073d7a305be0a4d856d1c07428b48bba06a9f JHLXVG98 454a72f9354c59571244685ba6835d3f752b58f7cc4372278107e88b39225da9 O8mpr58x 6cec547c3b92dd27fb74c0c27bd61e2c170923cf0c01a41a5cee8c473a11db62 SOpZbONn 52c9b94fc51de375d02bba6897354a7e97bd7573cb2e022067ce807ee42d214c XKypMMiJ ba7daabeff21c6465e8214b039ed49821bd8b4bf28aee5f107a98f0ddec7174c bJ8uPssG f23046a5e9f1964a9bb81d017bad80b827aab48527c3e7c7a0ad1bb3b6994177 fANUtdte c3aa5b21307d698126130bcef215ac9829a506ab7f9b1361da1e8c245eb005c4 jg2ztGlp 289248d1bb64efec318ef40fb10633a65c10af562bd2d25c84220051a15af050 p0yUpsYe ce222b6b65e012e7a0209bc9951690597779b042d556a6f2015b1c21b9901a09 uF2fheP1 dd7df9683d05b5eed8c280eedbafd2c2fa01868c649eb94cc79d753e0e254499 xa0pHpo3 585f5acca06e7c1d47cc3871654206fa70adeecc39cd8c584f77d52f8a4d3419 34asQJAj ddcfd164213fa595f38b103d0436c39ce383bad8303e0609d5d328356c7cde7a 5uH65mOX fb47580434abe1c8177cd757f32d08d74c3445776c8f487db0a987828026b92c AHwWjpbL 4c29d7fe7d4c1498418c49bb9c20df5eae2b6067f65b2eebf7ffea74eb81572b EtkxnTjE 74d7f30eb65b30657c517e1b4d70cf6e4d47103c9da773aa539bda1ea712a956 JKlfmBiL a8a95903fa5337abcac799769cee16ec354661351f89f7ad9b1dbb81a49dd032 OFSlnCKK 2880efaf431ff729cf2b7f8cc3d3e8934893dd336996081eea36a2260d424cc6 SXfbixMa 750b63262b65068258396891e77f7afa851394bde7a9c8c3098cbf8ae1ddb5e5 XZocCx02 77fd76cc340322ae8a41d8f87d5951b0c60949bf7a1d51d901e90f27e5141b83 bJquvh3E 5c9d5df75a524bdb064fc6c49d7d9abde624b1994dfc896a3a54e4d9e8ab1076 fFbQAlD7 70086a1d65272fcd55e417986c4684f9f86943de88ad93f5b7c6d69ca825a500 jpTG7wle dcc077e5d75839805b8cf90bcd85e0213e2a418d551f2229a99c75365397b32c p8McbjLN 6b22bc5d41ab8d43ee09c94756001d16aef5f9b04e51108543e35b80c79b1690 uFoxxMAD b2446a99ef12511def4327e9504d527cc7de79dc4eb84bab5b6397a5e8c10513 y2TwAQsl bbce48808c1a06ba47e9434e289b3b3e7e7cc8219d6853417c4bf135b42458d1 3FS3M7tr cc3c691e0a2a275d32a8053c12224af4e3fb999db15a72f1cc5325098a07deb8 6GarVCiO 5e44db07e934c2dd969458e30315968206b045c1fdc3547d34b35263f229bbb3 ANd9SGuS a0284a0b9ded5bccbf028caaf2fe3dde70cb48592235b7ded9abd95f11e3a48a EwczAgxU 5e283b6d019cccf1dce1e6e2e7019d02337f8835f430dfa8b7c48905f32af0cc JPzzPv2R d69c85eab19d904cd5b87221c1ba1603a5ea3e17fbc76cb1b7e6ad31b7c438fe OHWOluJj eb5d4024a654c9118dec859745745a864f544737dc359535b69928b35c6555ac SibjLvWM 2a5f932d98aac9a4ed47b34c52225286b793e5aaf4d722448e4bcdae5d07fe72 Xkrt40pJ 2fd9ca2343a1cb251e1cf91a173be3b49ed959f4f29a84b9afe9bf8726c9a4c0 bOxuzUXf f73af464819c557059ab54ff29f6829dd8192668135cb7a669ce151d64cc60b5 fG3pxqYw 55813904319e7c9140ff0a35e5dbf99ea63b4613a95c02adf1108bef200a25e8 k1uy8MT2 43b0bb9e34a853f07dc21a7a3ffb954c249acbe7ea5649bd773ef2c7b9051e7d pGy7EVYy 4eaf000af731b44485e16646f9ae132778d1bc99997a6104fddf44af765d6bf1 uHK0HPxg 00ae7e498b319b92bc56ae2562fa2c8535062260c77c3cf66f9fa0d6ae3c662e yCXEcn1e ``` ::: 用notepad/vscode/任何文本編輯器 按下`ctrl+f`查詢題目所給的校驗碼  會是`87590c24`這個檔案 `cd ..`回到上層資料夾 然後執行 `./decrypt.sh files/87590c24`  ``` picoCTF{trust_but_verify_87590c24} ```  ## Day 14 2025/12/23-picoCTF strings it  首先打開`strings`  `ctrl+f`搜尋`picoCTF`  ``` picoCTF{5tRIng5_1T_FB7D7Bb6} ```  ## Day 15 2025/12/24-picoCTF fixme2.py  `fixme2.py`: ```python import random def str_xor(secret, key): #extend key to secret length new_key = key i = 0 while len(new_key) < len(secret): new_key = new_key + key[i] i = (i + 1) % len(key) return "".join([chr(ord(secret_c) ^ ord(new_key_c)) for (secret_c,new_key_c) in zip(secret,new_key)]) flag_enc = chr(0x15) + chr(0x07) + chr(0x08) + chr(0x06) + chr(0x27) + chr(0x21) + chr(0x23) + chr(0x15) + chr(0x58) + chr(0x18) + chr(0x11) + chr(0x41) + chr(0x09) + chr(0x5f) + chr(0x1f) + chr(0x10) + chr(0x3b) + chr(0x1b) + chr(0x55) + chr(0x1a) + chr(0x34) + chr(0x5d) + chr(0x51) + chr(0x40) + chr(0x54) + chr(0x09) + chr(0x05) + chr(0x04) + chr(0x57) + chr(0x1b) + chr(0x11) + chr(0x31) + chr(0x0e) + chr(0x51) + chr(0x5c) + chr(0x44) + chr(0x51) + chr(0x0a) + chr(0x5b) + chr(0x5a) + chr(0x19) flag = str_xor(flag_enc, 'enkidu') # Check that flag is not empty if flag = "": print('String XOR encountered a problem, quitting.') else: print('That is correct! Here\'s your flag: ' + flag) ``` 打開之後vscode就先報了錯  運行之後的報錯提示  結果是少一個=所造成的問題 我們把它加上  耶  ``` picoCTF{3qu4l1ty_n0t_4551gnm3nt_e8814d03} ```  ### 啊?為什麼 在程式語言裡,=是用來指定給變數一個值的 像是 ```python a=100 ``` 而這個程式碼是要判斷flag是不是"" 而判斷會使用== ```python if flag == "": ``` 所以把原本是指定意義的=再加上去一個就可以正常判斷了! 基本上所有程式都是這樣判斷的 ## Day 16 2025/12/25-picoCTF Unminify btw聖誕節快樂  網站打開來長這樣  右鍵-檢視網頁原始碼  然後`CTRL+F`搜尋`picoCTF` 會在第十五項看到Flag  ``` picoCTF{pr3tty_c0d3_622b2c88} ```  ## Day 17 2025/12/26-picoCTF First Find  `files.zip`:  直接搜尋`uber-secret.txt`  ``` picoCTF{f1nd_15_f457_ab443fd1} ```  > 這麼簡單還要出?? ## Day 18 2025/12/27-picoCTF Includes  會到這個網頁  右鍵-檢查-原始碼  `script.js`和`style.css`就能發現flag的頭和尾   並起來 ``` picoCTF{1nclu51v17y_1of2_f7w_2of2_b8f4b022} ```  ## Day 19 2025/12/28-picoCTF HashingJobApp  先連線到他給的伺服器`nc xxx.picoctf.net (port)`  然後使用[站長工具](https://tool.chinaz.com/tools/md5.aspx)來加密 結果要看32位[小]  然後像我一樣把所有的題目加密完  就會有flag了  ``` picoCTF{4ppl1c4710n_r3c31v3d_bf2ceb02} ```  ## Day 20 2025/12/29-picoCTF Collaborative Development  先給電腦裝一下[git](https://git-scm.com/install/windows)   讓git添加到系統pach 一路next 然後等它裝完後在檔案的下面跑cmd  `git branch -a `  然後使用 `git diff feature/part-1..feature/part-2 && git diff feature/part-2..feature/part-3` 這裡參考了[這篇文章](https://medium.com/@vgqxjb/collaborative-development-9c1875e7dce2)   ``` picoCTF{t3@mw0rk_m@k3s_th3_dr3@m_w0rk_7ae8dd33} ```  > 文章要換地方了 hackmd->zackzheng's blog # 之後放在這 https://zack.siiway.org/posts/%E4%B8%80%E5%A4%A9%E4%B8%80ctf-1/
×
Sign in
Email
Password
Forgot password
or
Sign in via Google
Sign in via Facebook
Sign in via X(Twitter)
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
Continue with a different method
New to HackMD?
Sign up
By signing in, you agree to our
terms of service
.