m0nd2y(321)
-
cryptohack.org - Keyed Permutations
보호되어 있는 글입니다.
2021.06.28 -
cryptohack.org - XOR Properties
보호되어 있는 글입니다.
2021.06.27 -
Bandit - level32→ level33
level32→ level33 ssh bandit32@bandit.labs.overthewire.org -p 2220 pw : 56a9bf19c63d650ce78e6ec0354ee45e $0 cat /etc/bandit_pass/bandit33 FLAG : c9c3199ddf4121b10cf581a98d51caee
2021.06.27 -
HackCTF - babyfsb
문제는 위와 같습니다. ida를 통해서 문제를 확인해보면 위와 같은 구조를 가지고 있습니다. 전형적인 FSB문제입니다. 1. 어떻게 main으로 반복할 것인가 2. 어떻게 canary를 처리할 것인가 3. 어떻게 system주소를 가져올 것인가 세가지에 대해서 생각해보면 됩니다. 1번의 경우 canary를 덮은 경우 __stack_chk_fail함수를 호출하게 되는데 이 함수의 got를 main함수로 덮으면 됩니다. 2번의 경우 1번을 위해 사용하면 됩니다. 3번의 경우 main으로 복귀하는 루프문이 만들어진 이후 __libc_start_main인 main의 ret은 fsb를 이용해서 leak해서 풀이가 가능합니다. 아래는 exploit 코드입니다. from pwn import * #r = process..
2021.06.26 -
Bandit - level31→ level32
level31→ level32 ssh bandit31@bandit.labs.overthewire.org -p 2220 pw : 47e603bb428404d265f59c42920d81e5 mkdir /ymp/m0nd2y31 cd /ymp/m0nd2y31 git clone ssh://bandit31-git@localhost/home/bandit31-git/repo cd repo vi key.txt May i come in 입력 git add key.txt -f git commit -m "upload" git push FLAG : 56a9bf19c63d650ce78e6ec0354ee45e
2021.06.26 -
Reversing.kr - Easy Keygen
Easy Keygen 문제입니다. 문제 이름처럼 Keygen을 하는 문제 같습니다. 문제를 실행시켜보면 위와 같이 이름하고, 시리얼 번호를 받습니다. 그리고 함께 들어 있는 Readme.txt 를 확인해보면 시리얼이 5B134977135E7D13일때의 key값을 찾아보라고 합니다. IDA에서 똑같이 string 부분을 확인해보고, 이를 따라 들어가면 메인함수를 확인할 수 있습니다. 아래 메인함수를 분석해보면 sprintf부분에서 ^(xor)연산이 있는것을 봐서 해당 부분에서 연산이 일어나는 것을 확인할 수 있습니다. v6, v7, v8 이 각각 v6(0x10), v7(0x20), v8(0x30) 을 가지고 있습니다. 또한 [29번줄] scanf에서 이름을 입력 받고, 이를 9변수에 저장한 후 [35번줄]..
2021.06.24