From ec7ce5a91c897990f71339e4b8d811aba9d5f819 Mon Sep 17 00:00:00 2001 From: lavafroth Date: Fri, 17 Feb 2023 09:37:08 +0000 Subject: [PATCH] deploy: f84efb9884566e6b4bdf9e9811309987cbf6c53c --- 404.html | 359 ++++++++-------- LeagueGothic.ttf | Bin 0 -> 63956 bytes about/index.html | 359 ++++++++-------- app.css | 15 +- art/index.html | 359 ++++++++-------- categories/index.html | 359 ++++++++-------- index.html | 360 ++++++++-------- omg-they-killed-kenny.svg | 1 + page/2/index.html | 360 ++++++++-------- .../index.html | 364 +++++++++-------- post/gadgeting-in-python-jails/index.html | 359 ++++++++-------- post/google-ctf-2022-treebox/index.html | 359 ++++++++-------- post/index.html | 359 ++++++++-------- post/kringlecon-2022-writeup/index.html | 359 ++++++++-------- post/liberating-14gib-of-space/index.html | 359 ++++++++-------- post/oh-my-god-they-killed-kenny/index.html | 385 +++++++++--------- post/page/2/index.html | 359 ++++++++-------- .../index.html | 359 ++++++++-------- .../index.html | 359 ++++++++-------- .../index.html | 359 ++++++++-------- post/picoctf-web-challenge-jauth/index.html | 359 ++++++++-------- post/picoctf-web-challenge-notepad/index.html | 359 ++++++++-------- post/r0-hash-me-please/index.html | 359 ++++++++-------- post/r0-hash-me-reloaded/index.html | 359 ++++++++-------- post/r0-i-saw-a-little-elf/index.html | 359 ++++++++-------- post/ringzer0ctf-bash-jail1/index.html | 359 ++++++++-------- post/ringzer0ctf-bash-jail2/index.html | 359 ++++++++-------- post/ringzer0ctf-bash-jail3/index.html | 359 ++++++++-------- post/the-make-everything-ok-button/index.html | 359 ++++++++-------- tags/index.html | 359 ++++++++-------- 30 files changed, 4905 insertions(+), 4837 deletions(-) create mode 100644 LeagueGothic.ttf create mode 100644 omg-they-killed-kenny.svg diff --git a/404.html b/404.html index 51064009..baa5c88c 100644 --- a/404.html +++ b/404.html @@ -35,28 +35,29 @@ + + + + + - - - - - - -
-
-
-

- lavafroth +
+
+ -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- - - - - - - - + btnDark.addEventListener('click', () => setDark(!bodyClx.contains('dark'))); + sysDark.addEventListener('change', (event) => setDark(event.matches)); + +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ + + + + + + + +

-

404

diff --git a/LeagueGothic.ttf b/LeagueGothic.ttf new file mode 100644 index 0000000000000000000000000000000000000000..cc762c85cc668b7e784f9ff9ed494ae83e322050 GIT binary patch literal 63956 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%0A( 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 BB830| literal 0 HcmV?d00001 diff --git a/about/index.html b/about/index.html index fca1edae..63d3d7cd 100644 --- a/about/index.html +++ b/about/index.html @@ -42,28 +42,29 @@ + + + + + - - - - - - -
-
-
-

- lavafroth +
+
+ -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- - - - - - - - + btnDark.addEventListener('click', () => setDark(!bodyClx.contains('dark'))); + sysDark.addEventListener('change', (event) => setDark(event.matches)); + +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ + + + + + + + +

-
diff --git a/app.css b/app.css index 7cca7723..007f1f40 100644 --- a/app.css +++ b/app.css @@ -189,13 +189,16 @@ img { } .logo { + + z-index: 1000; + margin-top: 5rem; + margin-left: var(--gap); display: flex; min-width: var(--side); padding-right: var(--gap); } .site-name { - max-width: calc(100% - 2rem - 3rem); padding-bottom: 0.3rem; overflow: auto; font-size: 3.4rem; @@ -246,8 +249,6 @@ img { margin-left: var(--gap); } - - .dark .social a { filter: invert(1); } @@ -699,6 +700,7 @@ img { min-height: 16rem; border-radius: 1rem; width: 100%; + overflow: hidden; } .lavasource { width: 100%; @@ -724,7 +726,7 @@ img { transform: translate(-50%, 100%); } .header { - font-family: 'League Gothic', sans-serif;text-transform: uppercase; + font-family: LeagueGothic; text-transform: uppercase; letter-spacing: 1rem; } @@ -765,4 +767,7 @@ img { bottom: var(--distance, 10rem); } } - +@font-face { + font-family: LeagueGothic; + src: url(LeagueGothic.ttf); +} diff --git a/art/index.html b/art/index.html index bfc4f171..d7b5656c 100644 --- a/art/index.html +++ b/art/index.html @@ -43,28 +43,29 @@ Tyler Joseph’s Portrait A painting of the lead vocalist of Twenty Øne Pil + + + + + - - - - - - -
-
-
-

- lavafroth +
+
+ -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- - - - - - - - + btnDark.addEventListener('click', () => setDark(!bodyClx.contains('dark'))); + sysDark.addEventListener('change', (event) => setDark(event.matches)); + +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ + + + + + + + +

-
diff --git a/categories/index.html b/categories/index.html index aa926299..f919a74a 100644 --- a/categories/index.html +++ b/categories/index.html @@ -35,15 +35,17 @@ + + + + + - - - - - - -
-
-
-

- lavafroth +
+
+ -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- - - - - - - - + btnDark.addEventListener('click', () => setDark(!bodyClx.contains('dark'))); + sysDark.addEventListener('change', (event) => setDark(event.matches)); + +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ + + + + + + + +

-
diff --git a/index.html b/index.html index 036d38de..70163d04 100644 --- a/index.html +++ b/index.html @@ -10,6 +10,7 @@ + @@ -35,15 +36,17 @@ + + + + + - - - - - - -
-
-
-

- lavafroth +
+
+ -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- - - - - - - - + btnDark.addEventListener('click', () => setDark(!bodyClx.contains('dark'))); + sysDark.addEventListener('change', (event) => setDark(event.matches)); + +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ + + + + + + + +

-
diff --git a/omg-they-killed-kenny.svg b/omg-they-killed-kenny.svg new file mode 100644 index 00000000..449aa340 --- /dev/null +++ b/omg-they-killed-kenny.svg @@ -0,0 +1 @@ +
items
children
children
item
...
child
...
child
...
.
props
props
items
shortId
path
\ No newline at end of file diff --git a/page/2/index.html b/page/2/index.html index e6de067f..58fa10bf 100644 --- a/page/2/index.html +++ b/page/2/index.html @@ -10,6 +10,7 @@ + @@ -35,15 +36,17 @@ + + + + + - - - - - - -
-
-
-

- lavafroth +
+
+ -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- - - - - - - - + btnDark.addEventListener('click', () => setDark(!bodyClx.contains('dark'))); + sysDark.addEventListener('change', (event) => setDark(event.matches)); + +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ + + + + + + + +

-
diff --git a/post/a-reasonably-private-firefox-setup/index.html b/post/a-reasonably-private-firefox-setup/index.html index 39b0c902..306b8252 100644 --- a/post/a-reasonably-private-firefox-setup/index.html +++ b/post/a-reasonably-private-firefox-setup/index.html @@ -43,28 +43,29 @@ Basic Preferences Let’s make the easiest first step, for each of the follo + + + + + - - - - - - -
-
-
-

- lavafroth +
+
+ -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- - - - - - - - + btnDark.addEventListener('click', () => setDark(!bodyClx.contains('dark'))); + sysDark.addEventListener('change', (event) => setDark(event.matches)); + +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ + + + + + + + +

-
@@ -367,7 +370,10 @@ how I prefer hardening my Firefox setup.

  • https://piped.video (or any other piped instance) provides a means to watch YouTube videos without sacrificing your privacy.
  • Some people use Bitwarden’s browser extension for password management. I prefer using old school KeePassXC on my host with the password database protected with a strong password.

    -

    With that, I’ll conclude this browser hardening post and although this is in no way exhaustive in terms of hardening techniques, I hope you have learnt something new from this post, although, if your threat model asks for it, you can always resort to the Tor Browser using Tails or Whonix. Bye!

    +

    With that, I’ll conclude this browser hardening post. Although this is in no +way exhaustive in terms of hardening techniques, I hope you have learnt +something new and remember, if your threat model asks for it, the Tor Browser +on Tails or Whonix might be your best bet. Bye!

    diff --git a/post/gadgeting-in-python-jails/index.html b/post/gadgeting-in-python-jails/index.html index a2f8c26d..c8dcd57c 100644 --- a/post/gadgeting-in-python-jails/index.html +++ b/post/gadgeting-in-python-jails/index.html @@ -43,28 +43,29 @@ Here is a cool video explanation by @pwnfunction on server side template injecti + + + + + - - - - - - -
    -
    -
    -

    - lavafroth +
    +
    + -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - - - - - - - + btnDark.addEventListener('click', () => setDark(!bodyClx.contains('dark'))); + sysDark.addEventListener('change', (event) => setDark(event.matches)); + +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + + + + + + + + +

    -
    diff --git a/post/google-ctf-2022-treebox/index.html b/post/google-ctf-2022-treebox/index.html index e0958c9b..1948e744 100644 --- a/post/google-ctf-2022-treebox/index.html +++ b/post/google-ctf-2022-treebox/index.html @@ -42,28 +42,29 @@ + + + + + - - - - - - -
    -
    -
    -

    - lavafroth +
    +
    + -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - - - - - - - + btnDark.addEventListener('click', () => setDark(!bodyClx.contains('dark'))); + sysDark.addEventListener('change', (event) => setDark(event.matches)); + +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + + + + + + + + +

    -
    diff --git a/post/index.html b/post/index.html index f1667f98..80c88d38 100644 --- a/post/index.html +++ b/post/index.html @@ -35,15 +35,17 @@ + + + + + - - - - - - -
    -
    -
    -

    - lavafroth +
    +
    + -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - - - - - - - + btnDark.addEventListener('click', () => setDark(!bodyClx.contains('dark'))); + sysDark.addEventListener('change', (event) => setDark(event.matches)); + +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + + + + + + + + +

    -
    diff --git a/post/kringlecon-2022-writeup/index.html b/post/kringlecon-2022-writeup/index.html index b764ab82..bdc57524 100644 --- a/post/kringlecon-2022-writeup/index.html +++ b/post/kringlecon-2022-writeup/index.html @@ -44,28 +44,29 @@ git clone git@haugfactory.com:asnowball/aws_scripts.git We can clone this the HT + + + + + - - - - - - -
    -
    -
    -

    - lavafroth +
    +
    + -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - - - - - - - + btnDark.addEventListener('click', () => setDark(!bodyClx.contains('dark'))); + sysDark.addEventListener('change', (event) => setDark(event.matches)); + +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + + + + + + + + +

    -
    diff --git a/post/liberating-14gib-of-space/index.html b/post/liberating-14gib-of-space/index.html index 40854f12..aab8fa76 100644 --- a/post/liberating-14gib-of-space/index.html +++ b/post/liberating-14gib-of-space/index.html @@ -45,28 +45,29 @@ For a given folder we would run the following to wipe the duplicates:" /> + + + + + - - - - - - -
    -
    -
    -

    - lavafroth +
    +
    + -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - - - - - - - + btnDark.addEventListener('click', () => setDark(!bodyClx.contains('dark'))); + sysDark.addEventListener('change', (event) => setDark(event.matches)); + +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + + + + + + + + +

    -
    diff --git a/post/oh-my-god-they-killed-kenny/index.html b/post/oh-my-god-they-killed-kenny/index.html index 12dbbfbb..dfe7a4e1 100644 --- a/post/oh-my-god-they-killed-kenny/index.html +++ b/post/oh-my-god-they-killed-kenny/index.html @@ -42,28 +42,29 @@ + + + + + - - - - - - -
    -
    -
    -

    - lavafroth +
    +
    + -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - - - - - - - + btnDark.addEventListener('click', () => setDark(!bodyClx.contains('dark'))); + sysDark.addEventListener('change', (event) => setDark(event.matches)); + +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + + + + + + + + +

    -
    @@ -336,31 +339,7 @@ jq ] }

    Here, I have deliberately removed some of the less important fields while preserving the structure of the data. This can perhaps be better understood using a flowchart diagram.

    - -
    -flowchart LR; - subgraph C [children] - c1(child) - c2(...) - end - subgraph D [children] - d1(child) - d2(...) - end - subgraph G [items] - g1(item) - g2(...) - end - A[.] --> B[props] - B --> C - c1 --> D - d1 --> E[props] - E --> F[items] - F --> G - g1 --> H[shortId] - g1 --> I[path] -
    - +

    flowchart

    jq optionally takes a positional argument to specify what field of the JSON data we want to output. Now that we are somewhat confident about the structure, we can form a query for jq to reach the path field and use the -r flag to output the raw string.

    .children[0].children[0].props.items.items[0].path
     

    Gluing all of this together we can get the URL path to random episode using

    diff --git a/post/page/2/index.html b/post/page/2/index.html index fb9d6861..d3fda9c5 100644 --- a/post/page/2/index.html +++ b/post/page/2/index.html @@ -35,15 +35,17 @@ + + + + + - - - - - - -
    -
    -
    -

    - lavafroth +
    +
    + -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - - - - - - - + btnDark.addEventListener('click', () => setDark(!bodyClx.contains('dark'))); + sysDark.addEventListener('change', (event) => setDark(event.matches)); + +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + + + + + + + + +

    -
    diff --git a/post/picoctf-2022-forensics-challenges-operation-oni-operation-orchid/index.html b/post/picoctf-2022-forensics-challenges-operation-oni-operation-orchid/index.html index 61ea6965..b1aae318 100644 --- a/post/picoctf-2022-forensics-challenges-operation-oni-operation-orchid/index.html +++ b/post/picoctf-2022-forensics-challenges-operation-oni-operation-orchid/index.html @@ -44,28 +44,29 @@ ssh -i key_file -p 61948 ctf-player@saturn." /> + + + + + - - - - - - -
    -
    -
    -

    - lavafroth +
    +
    + -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - - - - - - - + btnDark.addEventListener('click', () => setDark(!bodyClx.contains('dark'))); + sysDark.addEventListener('change', (event) => setDark(event.matches)); + +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + + + + + + + + +

    -
    diff --git a/post/picoctf-cryptography-challenge-pixelated/index.html b/post/picoctf-cryptography-challenge-pixelated/index.html index f22fdb7c..1e9c8fff 100644 --- a/post/picoctf-cryptography-challenge-pixelated/index.html +++ b/post/picoctf-cryptography-challenge-pixelated/index.html @@ -43,28 +43,29 @@ Introduction This challenge gives use two images and asks us if we can make a fl + + + + + - - - - - - -
    -
    -
    -

    - lavafroth +
    +
    + -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - - - - - - - + btnDark.addEventListener('click', () => setDark(!bodyClx.contains('dark'))); + sysDark.addEventListener('change', (event) => setDark(event.matches)); + +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + + + + + + + + +

    -
    diff --git a/post/picoctf-some-assembly-required-3/index.html b/post/picoctf-some-assembly-required-3/index.html index 1ac293a1..2af87d99 100644 --- a/post/picoctf-some-assembly-required-3/index.html +++ b/post/picoctf-some-assembly-required-3/index.html @@ -45,28 +45,29 @@ Looking at the page source by pressing ctrl u, we see that it is sourcing javasc + + + + + - - - - - - -
    -
    -
    -

    - lavafroth +
    +
    + -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - - - - - - - + btnDark.addEventListener('click', () => setDark(!bodyClx.contains('dark'))); + sysDark.addEventListener('change', (event) => setDark(event.matches)); + +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + + + + + + + + +

    -
    diff --git a/post/picoctf-web-challenge-jauth/index.html b/post/picoctf-web-challenge-jauth/index.html index 3a9aefc7..63ae00b9 100644 --- a/post/picoctf-web-challenge-jauth/index.html +++ b/post/picoctf-web-challenge-jauth/index.html @@ -44,28 +44,29 @@ The challenge is a dummy bank portal. On login, we see the message:" /> + + + + + - - - - - - -
    -
    -
    -

    - lavafroth +
    +
    + -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - - - - - - - + btnDark.addEventListener('click', () => setDark(!bodyClx.contains('dark'))); + sysDark.addEventListener('change', (event) => setDark(event.matches)); + +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + + + + + + + + +

    -
    diff --git a/post/picoctf-web-challenge-notepad/index.html b/post/picoctf-web-challenge-notepad/index.html index 95aaf453..eec7e762 100644 --- a/post/picoctf-web-challenge-notepad/index.html +++ b/post/picoctf-web-challenge-notepad/index.html @@ -45,28 +45,29 @@ The first thing I tried was triggering XSS (cross site scripting) with the follo + + + + + - - - - - - -
    -
    -
    -

    - lavafroth +
    +
    + -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - - - - - - - + btnDark.addEventListener('click', () => setDark(!bodyClx.contains('dark'))); + sysDark.addEventListener('change', (event) => setDark(event.matches)); + +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + + + + + + + + +

    -
    diff --git a/post/r0-hash-me-please/index.html b/post/r0-hash-me-please/index.html index 762e80b1..76e61a61 100644 --- a/post/r0-hash-me-please/index.html +++ b/post/r0-hash-me-please/index.html @@ -42,28 +42,29 @@ + + + + + - - - - - - -
    -
    -
    -

    - lavafroth +
    +
    + -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - - - - - - - + btnDark.addEventListener('click', () => setDark(!bodyClx.contains('dark'))); + sysDark.addEventListener('change', (event) => setDark(event.matches)); + +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + + + + + + + + +

    -
    diff --git a/post/r0-hash-me-reloaded/index.html b/post/r0-hash-me-reloaded/index.html index ff2639f5..3c627cca 100644 --- a/post/r0-hash-me-reloaded/index.html +++ b/post/r0-hash-me-reloaded/index.html @@ -42,28 +42,29 @@ + + + + + - - - - - - -
    -
    -
    -

    - lavafroth +
    +
    + -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - - - - - - - + btnDark.addEventListener('click', () => setDark(!bodyClx.contains('dark'))); + sysDark.addEventListener('change', (event) => setDark(event.matches)); + +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + + + + + + + + +

    -
    diff --git a/post/r0-i-saw-a-little-elf/index.html b/post/r0-i-saw-a-little-elf/index.html index d4a4c6d3..510723ff 100644 --- a/post/r0-i-saw-a-little-elf/index.html +++ b/post/r0-i-saw-a-little-elf/index.html @@ -42,28 +42,29 @@ + + + + + - - - - - - -
    -
    -
    -

    - lavafroth +
    +
    + -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - - - - - - - + btnDark.addEventListener('click', () => setDark(!bodyClx.contains('dark'))); + sysDark.addEventListener('change', (event) => setDark(event.matches)); + +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + + + + + + + + +

    -
    diff --git a/post/ringzer0ctf-bash-jail1/index.html b/post/ringzer0ctf-bash-jail1/index.html index 25a181e7..d6283b69 100644 --- a/post/ringzer0ctf-bash-jail1/index.html +++ b/post/ringzer0ctf-bash-jail1/index.html @@ -45,28 +45,29 @@ I tried a dummy command to see if I could see its stderr since command substitut + + + + + - - - - - - -
    -
    -
    -

    - lavafroth +
    +
    + -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - - - - - - - + btnDark.addEventListener('click', () => setDark(!bodyClx.contains('dark'))); + sysDark.addEventListener('change', (event) => setDark(event.matches)); + +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + + + + + + + + +

    -
    diff --git a/post/ringzer0ctf-bash-jail2/index.html b/post/ringzer0ctf-bash-jail2/index.html index 14e48ea1..28ddc000 100644 --- a/post/ringzer0ctf-bash-jail2/index.html +++ b/post/ringzer0ctf-bash-jail2/index.html @@ -43,28 +43,29 @@ Challenge bash code: function check_space { if [[ $1 == *[bdks';''&a + + + + + - - - - - - -
    -
    -
    -

    - lavafroth +
    +
    + -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - - - - - - - + btnDark.addEventListener('click', () => setDark(!bodyClx.contains('dark'))); + sysDark.addEventListener('change', (event) => setDark(event.matches)); + +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + + + + + + + + +

    -
    diff --git a/post/ringzer0ctf-bash-jail3/index.html b/post/ringzer0ctf-bash-jail3/index.html index 9ba990bc..9872979d 100644 --- a/post/ringzer0ctf-bash-jail3/index.html +++ b/post/ringzer0ctf-bash-jail3/index.html @@ -43,28 +43,29 @@ function check_space { if [[ $1 == *[bdksc]* ]] then return 0 fi return 1 } whil + + + + + - - - - - - -
    -
    -
    -

    - lavafroth +
    +
    + -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - - - - - - - + btnDark.addEventListener('click', () => setDark(!bodyClx.contains('dark'))); + sysDark.addEventListener('change', (event) => setDark(event.matches)); + +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + + + + + + + + +

    -
    diff --git a/post/the-make-everything-ok-button/index.html b/post/the-make-everything-ok-button/index.html index 786424b7..928cb852 100644 --- a/post/the-make-everything-ok-button/index.html +++ b/post/the-make-everything-ok-button/index.html @@ -42,28 +42,29 @@ + + + + + - - - - - - -
    -
    -
    -

    - lavafroth +
    +
    + -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - - - - - - - + btnDark.addEventListener('click', () => setDark(!bodyClx.contains('dark'))); + sysDark.addEventListener('change', (event) => setDark(event.matches)); + +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + + + + + + + + +

    -
    diff --git a/tags/index.html b/tags/index.html index d0c717f6..b9f8bc8d 100644 --- a/tags/index.html +++ b/tags/index.html @@ -35,15 +35,17 @@ + + + + + - - - - - - -
    -
    -
    -

    - lavafroth +
    +
    + -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - - - - - - - + btnDark.addEventListener('click', () => setDark(!bodyClx.contains('dark'))); + sysDark.addEventListener('change', (event) => setDark(event.matches)); + +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + + + + + + + + +

    -