#1 assembly
문제의 명령을 어셈블리로 작성하면,
mov rax, 0x77;
mov rbx, 0x88;
mov rcx, 0x99;
sub rax, 0x10; 이다.
https://defuse.ca/online-x86-assembler.htm#disassembly
Online x86 and x64 Intel Instruction Assembler
Online x86 / x64 Assembler and Disassembler This tool takes x86 or x64 assembly instructions and converts them to their binary representation (machine code). It can also go the other way, taking a hexadecimal string of machine code and transforming it into
defuse.ca
해당 사이트에서 어셈블리 코드를 x64로 Assemble하여 나온 String Literal를 flag형식에 맞추면 된다.
#2 assembly
nc로 접속해보면,
IDA로 열어보면,
read() 함수에서 bof가 발생한다.
카나리를 우회하는 문제인 것 같다.
#3 assemlater
바로 IDA로 열어보면,
main() 함수에서 scanf로 입력 받고 assembly_calc() 함수를 호출한다.
assembly_calc()에서는 인자인 v4와 0xABCD를 xor 한 값이 4886774851(0x123464443)이면 flag를 준다.
#4 canacode
jpg를 .jpg 확장자로 열어보면....
많이 힘드셨나보다...
canacod를 IDA로 열어보면,
잘 모르겠다! 패스토큰 사용!
'WhoIs 정보보안 교육 > Pwnable' 카테고리의 다른 글
Pwnable 3주차 과제 Write-up(#1~#3) (0) | 2021.12.05 |
---|---|
Pwnable 1주차 과제 Write-up(#1~#3) (0) | 2021.11.21 |