#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로 열어보면,

main 함수

read() 함수에서 bof가 발생한다.

generate_passcode 함수
win 함수

카나리를 우회하는 문제인 것 같다.


#3 assemlater

바로 IDA로 열어보면,

main 함수
assembly_calc 함수

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