CTF

    [FwordCTF 2021] Blacklist Revenge + 후기

    FwordCTF 2021에 참여하게 되었다. To-Do List에 있는 목표 중 하나 달성해볼까라는 마인드로 참여해봤다. 얼마나 풀 수 있을까 고민됐지만 시간 내 2문제 그리고 아래에서 설명할 문제, 해서 pwn에서는 총 3문제 풀었다. 문제 풀이 환경 : Ubuntu 20.04 Note에 적혀있는 말 보면 사용자가 입력에 대한 리턴을 받을 수 없다는 말로 해석된다. 그래서 구글링 결과 리버싱 쉘(reversing shell)을 이용해야 한다는 결론을 얻었다. 📝 Analysis Mitigation & File Spec mitigation은 별거 없는데, 무려 static 파일이다. Code · main init_0()과 vuln() 함수로 이루어진 간단한 main이다. · init_0 대충 seccom..

    [RaRCTF 2021] write-ups

    RaRCTF 2021 > - code 1) main code 전역 변수의 기본값은 0x13371337이다. 그러니까 makeshot() 함수에서 뭔가를 해서 다른 값으로 변경시켜야 할 것 같다. 2) makeshot 저기 빨간 줄은 어셈이 잘못 해석되어있다. code의 주소는 0x404068이다. 그런데 더하는 값이 0x500000라서 scanf에 0x0을 줘도 넘어버린다. 그래서 integer overflow를 이용해서 code의 주소로 맞춰주면 밑에서 0으로 값을 수정해줘서 main의 성공 조건을 통과하고 쉘을 불러올 것이다. 저 값에서 간단하게 64bit로만 맞춰주면 된다. (∵ v1이 64bit로 연산되고 있기 때문) - exploit from pwn import * # p = process('...