diff --git a/jujure/config.toml b/jujure/config.toml index 51b60f4..42c4d8d 100644 --- a/jujure/config.toml +++ b/jujure/config.toml @@ -19,7 +19,7 @@ enableEmoji = true dateformNumTime = "2006-01-02 15:04" # Subtitle for home - homeSubtitle = "de la conf de Julien" + homeSubtitle = "" # Set disableReadOtherPosts to true in order to hide the links to other posts. disableReadOtherPosts = false @@ -29,7 +29,7 @@ enableEmoji = true # Metadata mostly used in document's head description = "" - keywords = "homepage, blog, crypto, reverse" + keywords = "homepage, blog, crypto, reverse, exploit" images = [""] [[params.social]] @@ -69,7 +69,7 @@ enableEmoji = true [languages.en.params.logo] logoMark = "juju@synacktiv ~$ " - logoText = "cryptopouneur" + logoText = "objdump -d" logoHomeLink = "/" logoCursorColor = "#3884FF" # or diff --git a/jujure/content/writeups/fcsc_2022/EXTerminated.md b/jujure/content/writeups/fcsc_2022/EXTerminated.md index 1fd6df1..73bba5e 100644 --- a/jujure/content/writeups/fcsc_2022/EXTerminated.md +++ b/jujure/content/writeups/fcsc_2022/EXTerminated.md @@ -129,12 +129,12 @@ A small fast forward in time as the main function is really straight forward, The program takes the path to the device to encrypt as argument, calls a bunch of function that are mostly wrappers around libext2fs functions to initialize -some global variables holding structures of the EXT filesystem. It alsos checks +some global variables holding structures of the EXT filesystem. It also checks that some flags are set in the structures of libext2fs, I do not know if these flags are implementation specific or are standard EXT flags but I did not bother too much with this. -The intersting stuff is at the end, I can see that it calls a function that +The interesting stuff is at the end, I can see that it calls a function that I called `encrypt_folder` after reversing it. It then flushes the filesystem to disk and write the inode bitmap. @@ -145,8 +145,8 @@ disk and write the inode bitmap. Alright so let's take a look at the `encrypt_folder` to understand why I called it this way. -I could clearly see from `main` that function was called with the string `.` -to reference the current directory, and a function pointer that was still +I could clearly see from `main` that this function was called with the string +`.` to reference the current directory, and a function pointer that was still unkown to me at the time but that I renamed `encrypt_file`. How I knew that the function was encrypting folders and that the parameter was diff --git a/jujure/content/writeups/fcsc_2022/diplodocus.md b/jujure/content/writeups/fcsc_2022/diplodocus.md index f0ae8e2..794863d 100644 --- a/jujure/content/writeups/fcsc_2022/diplodocus.md +++ b/jujure/content/writeups/fcsc_2022/diplodocus.md @@ -225,7 +225,7 @@ on a third bitboard at the coordinates indexed by the operands. So my decompiler really despise this function, I told you it took the whole context as parameters but its not exactly true as it actually packs the whole context in 10 `int128_t` arguments using SIMD instructions. I cleaned up the -function call for your eyes so you do not have de keep tracks of the 12 +function call for your eyes so you do not have de keep track of the 12 parameters of the function. {{< code file="/static/diplodocus/case4_stripped.c" language="c" >}} @@ -336,7 +336,7 @@ time solving it manually. I might start to implement a SAT solver or som... But wait, did you spot something sus with this implementation ? -{{< image src="/diplodocus/the_rock.jpg" style="border-radius: 8px;" >}} +{{< image src="/diplodocus/the_rock.gif" style="border-radius: 8px;" >}} ## Bypassing the puzzle diff --git a/jujure/static/EXTerminated/encrypt_file.c b/jujure/static/EXTerminated/encrypt_file.c index 1f53abe..52caabe 100644 --- a/jujure/static/EXTerminated/encrypt_file.c +++ b/jujure/static/EXTerminated/encrypt_file.c @@ -32,7 +32,6 @@ int64_t encrypt_file2(char* name) // Determine if another block is needed to encrypt the file int32_t n_blocks = len_read / 0x1000; - int32_t len_read; if (len_read % 0x1000 != 0) stop = 1; diff --git a/jujure/static/EXTerminated/main.c b/jujure/static/EXTerminated/main.c index c3bb511..89e25c3 100644 --- a/jujure/static/EXTerminated/main.c +++ b/jujure/static/EXTerminated/main.c @@ -3,8 +3,6 @@ int32_t main(int32_t argc, char** argv, char** envp) int32_t res; if (argc != 2) { - char** rax; - rax = 0; printf("Usage %s \n", *(int64_t*)argv); res = 1; } diff --git a/jujure/static/diplodocus/the_rock.gif b/jujure/static/diplodocus/the_rock.gif new file mode 100644 index 0000000..6cf59c9 Binary files /dev/null and b/jujure/static/diplodocus/the_rock.gif differ diff --git a/jujure/static/diplodocus/the_rock.jpg b/jujure/static/diplodocus/the_rock.jpg deleted file mode 100644 index 826297c..0000000 Binary files a/jujure/static/diplodocus/the_rock.jpg and /dev/null differ