diff --git a/investigative_reversing_3/encoded.bmp b/investigative_reversing_3/encoded.bmp new file mode 100755 index 0000000..76fd4f2 Binary files /dev/null and b/investigative_reversing_3/encoded.bmp differ diff --git a/investigative_reversing_3/investigative_reversing_3.gpr b/investigative_reversing_3/investigative_reversing_3.gpr new file mode 100644 index 0000000..e69de29 diff --git a/investigative_reversing_3/investigative_reversing_3.rep/idata/00/00000000.prp b/investigative_reversing_3/investigative_reversing_3.rep/idata/00/00000000.prp new file mode 100644 index 0000000..8165023 --- /dev/null +++ b/investigative_reversing_3/investigative_reversing_3.rep/idata/00/00000000.prp @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/investigative_reversing_3/investigative_reversing_3.rep/idata/00/~00000000.db/db.1.gbf b/investigative_reversing_3/investigative_reversing_3.rep/idata/00/~00000000.db/db.1.gbf new file mode 100644 index 0000000..d34827c Binary files /dev/null and b/investigative_reversing_3/investigative_reversing_3.rep/idata/00/~00000000.db/db.1.gbf differ diff --git a/investigative_reversing_3/investigative_reversing_3.rep/idata/00/~00000000.db/db.2.gbf b/investigative_reversing_3/investigative_reversing_3.rep/idata/00/~00000000.db/db.2.gbf new file mode 100644 index 0000000..07719f4 Binary files /dev/null and b/investigative_reversing_3/investigative_reversing_3.rep/idata/00/~00000000.db/db.2.gbf differ diff --git a/investigative_reversing_3/investigative_reversing_3.rep/idata/~index.bak b/investigative_reversing_3/investigative_reversing_3.rep/idata/~index.bak new file mode 100644 index 0000000..25d5e9c --- /dev/null +++ b/investigative_reversing_3/investigative_reversing_3.rep/idata/~index.bak @@ -0,0 +1,5 @@ +VERSION=1 +/ + 00000000:mystery:c0a8b2a0d9517124902938100 +NEXT-ID:1 +MD5:d41d8cd98f00b204e9800998ecf8427e diff --git a/investigative_reversing_3/investigative_reversing_3.rep/idata/~index.dat b/investigative_reversing_3/investigative_reversing_3.rep/idata/~index.dat new file mode 100644 index 0000000..25d5e9c --- /dev/null +++ b/investigative_reversing_3/investigative_reversing_3.rep/idata/~index.dat @@ -0,0 +1,5 @@ +VERSION=1 +/ + 00000000:mystery:c0a8b2a0d9517124902938100 +NEXT-ID:1 +MD5:d41d8cd98f00b204e9800998ecf8427e diff --git a/investigative_reversing_3/investigative_reversing_3.rep/project.prp b/investigative_reversing_3/investigative_reversing_3.rep/project.prp new file mode 100644 index 0000000..9ad0e4c --- /dev/null +++ b/investigative_reversing_3/investigative_reversing_3.rep/project.prp @@ -0,0 +1,6 @@ + + + + + + diff --git a/investigative_reversing_3/investigative_reversing_3.rep/projectState b/investigative_reversing_3/investigative_reversing_3.rep/projectState new file mode 100644 index 0000000..fb8621d --- /dev/null +++ b/investigative_reversing_3/investigative_reversing_3.rep/projectState @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/investigative_reversing_3/investigative_reversing_3.rep/user/00/00000000.prp b/investigative_reversing_3/investigative_reversing_3.rep/user/00/00000000.prp new file mode 100644 index 0000000..5bb9c54 --- /dev/null +++ b/investigative_reversing_3/investigative_reversing_3.rep/user/00/00000000.prp @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/investigative_reversing_3/investigative_reversing_3.rep/user/00/~00000000.db/db.1.gbf b/investigative_reversing_3/investigative_reversing_3.rep/user/00/~00000000.db/db.1.gbf new file mode 100644 index 0000000..d082383 Binary files /dev/null and b/investigative_reversing_3/investigative_reversing_3.rep/user/00/~00000000.db/db.1.gbf differ diff --git a/investigative_reversing_3/investigative_reversing_3.rep/user/~index.bak b/investigative_reversing_3/investigative_reversing_3.rep/user/~index.bak new file mode 100644 index 0000000..b776dc3 --- /dev/null +++ b/investigative_reversing_3/investigative_reversing_3.rep/user/~index.bak @@ -0,0 +1,4 @@ +VERSION=1 +/ +NEXT-ID:0 +MD5:d41d8cd98f00b204e9800998ecf8427e diff --git a/investigative_reversing_3/investigative_reversing_3.rep/user/~index.dat b/investigative_reversing_3/investigative_reversing_3.rep/user/~index.dat new file mode 100644 index 0000000..4621dfb --- /dev/null +++ b/investigative_reversing_3/investigative_reversing_3.rep/user/~index.dat @@ -0,0 +1,5 @@ +VERSION=1 +/ + 00000000:udf_c0a8b2a0d9517124902938100:c0a8b2a0dd759223249615400 +NEXT-ID:1 +MD5:d41d8cd98f00b204e9800998ecf8427e diff --git a/investigative_reversing_3/investigative_reversing_3.rep/user/~journal.bak b/investigative_reversing_3/investigative_reversing_3.rep/user/~journal.bak new file mode 100644 index 0000000..3dccd7d --- /dev/null +++ b/investigative_reversing_3/investigative_reversing_3.rep/user/~journal.bak @@ -0,0 +1,2 @@ +IADD:00000000:/udf_c0a8b2a0d9517124902938100 +IDSET:/udf_c0a8b2a0d9517124902938100:c0a8b2a0dd759223249615400 diff --git a/investigative_reversing_3/investigative_reversing_3.rep/versioned/~index.bak b/investigative_reversing_3/investigative_reversing_3.rep/versioned/~index.bak new file mode 100644 index 0000000..b776dc3 --- /dev/null +++ b/investigative_reversing_3/investigative_reversing_3.rep/versioned/~index.bak @@ -0,0 +1,4 @@ +VERSION=1 +/ +NEXT-ID:0 +MD5:d41d8cd98f00b204e9800998ecf8427e diff --git a/investigative_reversing_3/investigative_reversing_3.rep/versioned/~index.dat b/investigative_reversing_3/investigative_reversing_3.rep/versioned/~index.dat new file mode 100644 index 0000000..b776dc3 --- /dev/null +++ b/investigative_reversing_3/investigative_reversing_3.rep/versioned/~index.dat @@ -0,0 +1,4 @@ +VERSION=1 +/ +NEXT-ID:0 +MD5:d41d8cd98f00b204e9800998ecf8427e diff --git a/investigative_reversing_3/mystery b/investigative_reversing_3/mystery new file mode 100755 index 0000000..f2f8e78 Binary files /dev/null and b/investigative_reversing_3/mystery differ diff --git a/investigative_reversing_3/sol.py b/investigative_reversing_3/sol.py new file mode 100755 index 0000000..cd7571f --- /dev/null +++ b/investigative_reversing_3/sol.py @@ -0,0 +1,22 @@ +#!/home/maxime/.pyvenv/bin/python3 + +with open("encoded.bmp", 'rb') as f: + img = f.read() + + buffer_zone = 732 + flag_size = 50 + enc_size = flag_size * 9 + + enc_buffer = img[buffer_zone:buffer_zone + enc_size] + flag_buffer = [''] * flag_size + + for i in range(flag_size): + enc_offset = i * 9 + + char = 0 + for j in range(8): + char |= (enc_buffer[enc_offset+j] & 1) << j + flag_buffer[i] = chr(char) + + print(''.join(flag_buffer)) +