fixing typos
Signed-off-by: Julien CLEMENT <julien.clement@epita.fr>
This commit is contained in:
parent
55075855bb
commit
5358dc632f
@ -19,7 +19,7 @@ enableEmoji = true
|
|||||||
dateformNumTime = "2006-01-02 15:04"
|
dateformNumTime = "2006-01-02 15:04"
|
||||||
|
|
||||||
# Subtitle for home
|
# Subtitle for home
|
||||||
homeSubtitle = "de la conf de Julien"
|
homeSubtitle = ""
|
||||||
|
|
||||||
# Set disableReadOtherPosts to true in order to hide the links to other posts.
|
# Set disableReadOtherPosts to true in order to hide the links to other posts.
|
||||||
disableReadOtherPosts = false
|
disableReadOtherPosts = false
|
||||||
@ -29,7 +29,7 @@ enableEmoji = true
|
|||||||
|
|
||||||
# Metadata mostly used in document's head
|
# Metadata mostly used in document's head
|
||||||
description = ""
|
description = ""
|
||||||
keywords = "homepage, blog, crypto, reverse"
|
keywords = "homepage, blog, crypto, reverse, exploit"
|
||||||
images = [""]
|
images = [""]
|
||||||
|
|
||||||
[[params.social]]
|
[[params.social]]
|
||||||
@ -69,7 +69,7 @@ enableEmoji = true
|
|||||||
|
|
||||||
[languages.en.params.logo]
|
[languages.en.params.logo]
|
||||||
logoMark = "juju@synacktiv ~$ "
|
logoMark = "juju@synacktiv ~$ "
|
||||||
logoText = "cryptopouneur"
|
logoText = "objdump -d"
|
||||||
logoHomeLink = "/"
|
logoHomeLink = "/"
|
||||||
logoCursorColor = "#3884FF"
|
logoCursorColor = "#3884FF"
|
||||||
# or
|
# or
|
||||||
|
@ -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
|
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
|
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
|
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
|
flags are implementation specific or are standard EXT flags but I did not
|
||||||
bother too much with this.
|
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
|
I called `encrypt_folder` after reversing it. It then flushes the filesystem to
|
||||||
disk and write the inode bitmap.
|
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
|
Alright so let's take a look at the `encrypt_folder` to understand why I called
|
||||||
it this way.
|
it this way.
|
||||||
|
|
||||||
I could clearly see from `main` that function was called with the string `.`
|
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
|
`.` to reference the current directory, and a function pointer that was still
|
||||||
unkown to me at the time but that I renamed `encrypt_file`.
|
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
|
How I knew that the function was encrypting folders and that the parameter was
|
||||||
|
@ -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
|
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 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
|
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.
|
parameters of the function.
|
||||||
|
|
||||||
{{< code file="/static/diplodocus/case4_stripped.c" language="c" >}}
|
{{< 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 ?
|
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
|
## Bypassing the puzzle
|
||||||
|
|
||||||
|
@ -32,7 +32,6 @@ int64_t encrypt_file2(char* name)
|
|||||||
|
|
||||||
// Determine if another block is needed to encrypt the file
|
// Determine if another block is needed to encrypt the file
|
||||||
int32_t n_blocks = len_read / 0x1000;
|
int32_t n_blocks = len_read / 0x1000;
|
||||||
int32_t len_read;
|
|
||||||
if (len_read % 0x1000 != 0)
|
if (len_read % 0x1000 != 0)
|
||||||
stop = 1;
|
stop = 1;
|
||||||
|
|
||||||
|
@ -3,8 +3,6 @@ int32_t main(int32_t argc, char** argv, char** envp)
|
|||||||
int32_t res;
|
int32_t res;
|
||||||
if (argc != 2)
|
if (argc != 2)
|
||||||
{
|
{
|
||||||
char** rax;
|
|
||||||
rax = 0;
|
|
||||||
printf("Usage %s <device> \n", *(int64_t*)argv);
|
printf("Usage %s <device> \n", *(int64_t*)argv);
|
||||||
res = 1;
|
res = 1;
|
||||||
}
|
}
|
||||||
|
BIN
jujure/static/diplodocus/the_rock.gif
Normal file
BIN
jujure/static/diplodocus/the_rock.gif
Normal file
Binary file not shown.
After Width: | Height: | Size: 4.2 MiB |
Binary file not shown.
Before Width: | Height: | Size: 140 KiB |
Loading…
Reference in New Issue
Block a user