Reversing 4

Dreamhack Invitationals 후기

어제 (2024년 5월 27일) Dreamhack Invitational에서 대회를 치루었고, 생각했던 것보다 낮은 순위를 기록했다..  19위에 랭크되었고, 대회 15문제 중 1문제밖에 풀지 못했다. 리버싱만 다 풀자는 마인드로 참여했는데 그게 잘 안 되었다.. ㅠㅠ 무엇이 문제였는가? 우선 1번 문제는 큰 문제는 아니였다. 1번 문제를 순삭하고 좋은 시작을 알렸다. solve.py# Use 'IDA Decompiled results' to parse the instructions# use sweeping to parse stringsdef parse1(s: str): instructions = s.split('\n') m = [] elasped = 0 for inst in ins..

osu!gaming CTF 2024 Reversing Write-Up

66등 하였다. 서론 원래 osu! 라는 게임을 즐겨하는 사람으로서 이 CTF는 굉장히 흥미로웠다. CTF 문제에 osu라는 새로운 항목이 추가되면서 CTF의 Fresh함을 챙겼다고 볼 수 있다. osu!와 CTF 모두 좋아하는 사람으로서 이 콤비네이션은 열심히 안 할 수 없다. 그 결과로 리버싱을 올킬했다. 이 글에서는 리버싱 문제에 관련해 Write-Up을 작성할 예정이다 SAT-before-osu 언제부터 이딴 게 리버싱이였는지 모르겠다. 주어진 dist.txt 안의 식을 풀면 된다. z3를 이용하거나 Sage를 이용하여 간단히 해결할 수 있다. wysi-baby Wysi 밈을 토대로 만든 웹사이트가 주어진다. 소스를 살펴보면 다음과 같은 Javascript 코드가 보인다. combos에 들어가는 ..

LACTF 2024 - Write-Up

오랜만에 글을 올린다. 그 이유는 해킹 공부 이외 공부를 수행하느라, 글을 쓸 여유가 없었던 것이다. 서론 전체 일반부에서 33등을 차지했다. 처음 나가는 외국 CTF이고, 문제 스타일을 알 수 있어서 유용했다. 나갈 생각이 없었지만 친구의 권유로 참가하게 되었다. 리버싱 문제만 풀었는데, 리버싱 문제는 대체로 쉬웠던 것 같다. 하지만 이 문제를 다 풀어도 돌아오는 혜택이 없다는 것을 인지한 터라 열심히 참가를 하지 않아서, 결국 올킬을 못하고 2개의 문제를 남겼다. aplet321 연립방정식을 풀어서 please의 개수, pretty의 개수를 맞춰 조건에 맞게 보내면 된다. 익스 코드 안 짰다. lactf{next_year_i'll_make_aplet456_hqp3c1a7bip5bmnc} the-sec..

Windows Kernel Hooking - II

이전 글을 읽는 것이 좋다. Preface “If you know the enemy and know yourself, you need not fear the result of a hundred battles. If you know yourself but not the enemy, for every victory gained you will also suffer a defeat. If you know neither the enemy nor yourself, you will succumb in every battle.” ― Sun Tzu, The Art of War 이 인용문에 따라서, 사전 조사를 할 필요가 있다. 우선 가장 중요한 점을 발견했다. 대충 치트 프로그램 만들어서 제3자에게 제공하거나 사용하면..