From 87151ea91f066992435bc1eab5fa369d8ad4f50a Mon Sep 17 00:00:00 2001 From: xamidev Date: Mon, 29 Dec 2025 11:01:12 +0100 Subject: [PATCH] V1 with content --- README.md | 5 + canary.txt | 68 ++++++ index.html | 65 ++++-- pgp.txt | 41 ++++ style.css | 35 ++++ writeups/2024-05-04-NeedleInTheWiFiStack.md | 99 +++++++++ writeups/2025-05-27-Cbizarre.md | 153 ++++++++++++++ writeups/2025-05-30-Dromedary.md | 179 ++++++++++++++++ writeups/2025-06-02-FakeNews.md | 46 +++++ writeups/2025-06-05-GorfouEnDanger1.md | 206 +++++++++++++++++++ writeups/2025-06-10-MPC.md | 157 ++++++++++++++ writeups/2025-06-12-USB51.md | 73 +++++++ writeups/2025-07-20-Corporate-cliche.md | 216 ++++++++++++++++++++ writeups/2025-07-20-Zeus.md | 137 +++++++++++++ writeups/2025-08-11-old-memes.md | 138 +++++++++++++ writeups/2025-08-18-pie-time.md | 86 ++++++++ writeups/2025-08-19-pie-time-2.md | 168 +++++++++++++++ writeups/2025-08-24-fmt1.md | 99 +++++++++ writeups/2025-08-24-fmt2.md | 125 +++++++++++ writeups/2025-08-26-bo3.md | 187 +++++++++++++++++ writeups/2025-08-27-fmt3.md | 183 +++++++++++++++++ 21 files changed, 2451 insertions(+), 15 deletions(-) create mode 100644 README.md create mode 100644 canary.txt create mode 100644 pgp.txt create mode 100644 writeups/2024-05-04-NeedleInTheWiFiStack.md create mode 100644 writeups/2025-05-27-Cbizarre.md create mode 100644 writeups/2025-05-30-Dromedary.md create mode 100644 writeups/2025-06-02-FakeNews.md create mode 100644 writeups/2025-06-05-GorfouEnDanger1.md create mode 100644 writeups/2025-06-10-MPC.md create mode 100644 writeups/2025-06-12-USB51.md create mode 100644 writeups/2025-07-20-Corporate-cliche.md create mode 100644 writeups/2025-07-20-Zeus.md create mode 100644 writeups/2025-08-11-old-memes.md create mode 100644 writeups/2025-08-18-pie-time.md create mode 100644 writeups/2025-08-19-pie-time-2.md create mode 100644 writeups/2025-08-24-fmt1.md create mode 100644 writeups/2025-08-24-fmt2.md create mode 100644 writeups/2025-08-26-bo3.md create mode 100644 writeups/2025-08-27-fmt3.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..64becdc --- /dev/null +++ b/README.md @@ -0,0 +1,5 @@ +## TODO + +- Responsiveness +- Populate with some nice content: About section, ideas, free software propaganda +- A few more "cool looking" features? \ No newline at end of file diff --git a/canary.txt b/canary.txt new file mode 100644 index 0000000..bff455d --- /dev/null +++ b/canary.txt @@ -0,0 +1,68 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA512 + +github.com/xamidev + +I am alive, free, and in control of my PGP key as of 26th of December, 2025. +This note will be renewed in less than 90 days. + +Latest Monero block hash: +aa88425694c0a194fb4568c659c99eb21ecdee32376210aadfbb44d1229d55e3 +-----BEGIN PGP SIGNATURE----- + +iQGzBAEBCgAdFiEErDL26y2hVQrO397oLW3bfhIptHsFAmlOZY8ACgkQLW3bfhIp +tHsC8wv/ee9OnuUokOCPw+NlIGlJd2D27Fh2NNjxObcmiAdxwBjqC+jmh8RW17Hr ++RlJqWtc0o35FNTs8tVYH+MShsB1KiFwbnXL7Pfqo3k0OTafBN25KhAi6rTQWr1C +LwwIqgyVc0SO8cVIyhPD1oIX2HJbQnMsZiJzE3BsFElKCJryohYpv+CgFI6sfMkg +0qv2gsMHXlA92GNv+sjJTUFpYUDen/wdD9+cr+SPThafmS3r+p8YEMettaHsN91d +OZ0V8wHtbWsz3YQmRC1eXLaMtFozr4MuRzE6l3EBtMYAvzGXyVabn/BWnotY8o89 +4QVLdN7d16/a4Ry8KkPz7OBaVMjpl+b91g3TXLsejuKEsMW5ya1gw2kpD7sIQYHj +0EgufcMvCyzSyZTsCFY9ttV6OoCqGblhNUBCqoaBdQAfoMnnhdD5HE0JXdCJkXoV +ZRhTjpkugcRrI1zcpj1UyA1c/kaaKKsxxzN0wP2aisBKWGt1FrCj4zlb6rzgEZSg +NDBi7uHC +=uCyy +-----END PGP SIGNATURE----- + + +-----BEGIN PGP PUBLIC KEY BLOCK----- + +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 +7r/MO+w1Y//onBy7KHr5k9gtjcQ= +=ZRh2 +-----END PGP PUBLIC KEY BLOCK----- + \ No newline at end of file diff --git a/index.html b/index.html index 44d15cb..3a396fe 100644 --- a/index.html +++ b/index.html @@ -1,9 +1,10 @@ - + + the libre garbage stash @@ -25,8 +26,11 @@

Welcome to my garbage stash!

- -

free software advocate; privacy and cybersecurity enthusiast; low-level development enjoyer.

+
+ +

Hello! I am a free software advocate, privacy and cybersecurity enthusiast, and low-level development enjoyer.
+ This is the place where I share some things I did around computers.

+
@@ -34,14 +38,15 @@

some of my projects...

🚧
-

- Nunc ornare convallis nibh. Aliquam id mi tincidunt, gravida elit vitae, vehicula neque. Nullam at eleifend - risus, ac placerat arcu. Morbi faucibus et sem eget ultrices. Mauris scelerisque bibendum arcu, non accumsan - odio semper nec. Sed convallis suscipit tortor, vitae rhoncus massa dapibus volutpat. Sed arcu massa, - tristique nec lorem eu, eleifend pharetra metus. Donec pellentesque augue lacus, fermentum volutpat diam - laoreet vitae. Duis at rhoncus neque. Etiam lobortis ac dui sed elementum. Mauris egestas aliquam tellus, - sed feugiat neque consectetur eu. -

+
@@ -49,7 +54,28 @@

CTF content...

🏴‍☠️
-

Blah blah blah I'm a hacker!

+
+

- pwn -

+ + Gorfou En Danger 1PIE TIMEformat-string-1buffer-overflow-3Fake NewsMPCCorporate clichéold-memesPIE TIME 2format-string-2format-string-3 + +

- rev -

+ + DromedaryZeusCbizarre + +

- forensics -

+ Needle in the Wi-Fi stackUSB51 +
+ + +
+
+

free (as in freedom)...

+ 🌎 +
+ +

All my works are licensed under the GNU GPL v3 unless otherwise specified.

+

Here are a couple of reasons why you shouldn't trust proprietary software.

@@ -63,9 +89,11 @@
@@ -84,8 +112,15 @@
  • Rammstein
  • RHCP
  • RATM
  • +
  • Korol i Shut
  • and many others
  • + +
    +

    About

    + 😄 +
    +

    I'm a passionate engineering/CS student, with a love for playing music, especially bass.

    diff --git a/pgp.txt b/pgp.txt new file mode 100644 index 0000000..a3cf9b7 --- /dev/null +++ b/pgp.txt @@ -0,0 +1,41 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +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 +7r/MO+w1Y//onBy7KHr5k9gtjcQ= +=ZRh2 +-----END PGP PUBLIC KEY BLOCK----- diff --git a/style.css b/style.css index 9711683..9342640 100644 --- a/style.css +++ b/style.css @@ -49,6 +49,29 @@ p, li { box-sizing: border-box; } +#cool-stuff a { + font-size:larger; + color:#df2929; +} + +#cool-stuff a:hover { + color:#ff5e5e; +} + +#cool-stuff li { + margin-top: 5px; + margin-bottom: 5px; + font-size: larger; +} + +#sideBar a { + color:grey; +} + +#sideBar a:hover { + color:#b4b4b4; +} + #all { padding:2% 20%; } @@ -113,3 +136,15 @@ p, li { cursor: pointer; font-size: 1.2em; } + +.profile { + display: flex; + align-items: flex-start; + gap: 12px; + margin-top: 10px; +} + +.profile p { + margin: 0; + line-height: 1.4; +} diff --git a/writeups/2024-05-04-NeedleInTheWiFiStack.md b/writeups/2024-05-04-NeedleInTheWiFiStack.md new file mode 100644 index 0000000..f3da6bc --- /dev/null +++ b/writeups/2024-05-04-NeedleInTheWiFiStack.md @@ -0,0 +1,99 @@ +--- +title: "Buckeye CTF 2023: Needle in the Wi-Fi stack" +excerpt: "Someone listened on the network and now our task is to exfiltrate some useful data from there." +tags: [ctf, forensics] +--- + +Someone listened on the network and now our task is to exfiltrate some useful data from there. + +## Recon + +We are provided with a `.pcap` file, which is a packet capture file, that we can open using Wireshark. At first glance, it looks like the information we need is hidden on the right: all the SSIDs are encoded. The encoding format seems to be base64, as most of the strings have one or two equal symbols at the end, and use an alphanumeric charset. We could verify this using online encoding checkers, but we can also use the Linux base64 tool as well for that. Assuming we saved one of those strings in a file, we can do: + +```bash +$ base64 -d weird_string +wh3n in doub7, hack hard3r +``` + +Scrolling to the end of the .pcap file, we see that there are over one thousand lines to be analyzed.. We clearly can't proceed manually with this amount of information. Unfortunately, we cannot read the packet capture file as-is and grep what we want, as it looks like gibberish. + +We could use the command-line utility `tshark` to read the file from the terminal, but all of the packet information we do not need is still present: + +```bash +$ tshark -r frames.pcap + 1 0.000000 22:22:22:22:22:22 -> Broadcast 802.11 120 Beacon frame, SN=0, FN=0, Flags=........, BI=100, +SSID="bG9vMDBvMDBvbzBvMG9vb3Q3YSB0cjRmZmJjIHRvZDR5Cg==" + 2 0.029637 22:22:22:22:22:22 -> Broadcast 802.11 140 Beacon frame, SN=0, FN=0, Flags=........, BI=100, +SSID="N2hpcypBcyBub3QgdG5LN3dvcm5gbmFtMyB5b3UgYXJlIGwwb2tpbmcbZjByCg==" + 3 0.041307 22:22:22:22:22:22 -> Broadcast 802.11 100 Beacon frame, SN=0, FN=0, Flags=........, BI=100, +SSID="d2lmaSBpNSBteSBtVT1aW9uCg==" + 4 0.052245 22:22:22:22:22:22 -> Broadcast 802.11 100 Beacon frame, SN=0, FN=0, Flags=........, BI=100, +SSID="d2lmaSBpNSBteSBtVT1aW9uCg==" +``` + +## Extracting data + +By reading the `tshark` help mage and manual page, we can see that there are options for extracting certain packet fields. We only want the SSIDs, so we will use these options: + +```bash +$ tshark -r frames.pcap -T fields -e wlan.ssid > ssids.txt +``` + +That command tells `tshark` to read the `frames.pcap` file, to extract data as fields, and only print the WLAN SSID field. The output will be stored in the ssids.txt file. Running this, we obtain a file containing hexadecimal values. We will have to convert this output to ASCII in order to read it properly. + +```bash +$ cat ssids.txt +b7437976644472664472666a74764d43797662353135953423063a52d65a6d6c6a494852765a44523543673d3d +4e3268706379472759532351676476777a9473564e236476636d37626d6479447942356233556759584a6c494777776232747 +0626d63675a6a427943673d3d +64326c6d615342704c53427655342775954567a6153797543673d3d +64326c6d615342704c5342765534553161537937543673d3d +19597738736516f3d +``` + +We can pipe a single line of hex through `xxd` to convert it to ASCII: + +```bash +$ echo 626a42304947677a636a4d4b | xxd -r -p +bjB0IGgzcjMK +``` + +That looks like some of the base64 we found earlier. Let's pipe our command output through the base64 tool: + +```bash +$ echo 626a42304947677a636a4d4b | xxd -r -p | base64 -d +n0t h3r3 +``` + +This is what we wanted. Now, let's automate this process for the huge amount of lines we have, by making a small Bash script: + +```bash +while read p; do + echo $p | xxd -r -p | base64 -d >> clearssids.txt +done