목록전체 글 (421)
외로운 Nova의 작업실
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/brxEX0/btrT41lcmVW/G8zeSzwQaRV3cZmxGdhBJ0/img.png)
- 패킹 패킹이란 프로그램의 코드 크기를 줄이려고 압축하거나 프로그램 분석을 어렵게 만들려고 암호화하는 것을 패킹이라고합니다. 특히 단순 압축하는 것을 컴프레싱, 암호화하는 것을 프로텍팅이락 구분합니다. 패킹의 원리는 다음과 같습니다. 1. origin code를 알고리즘에 따라 패킹한 후 그 코드를 packed data로 프로그램에 unpackingc code와 함께 저장합니다. 2. origin code는 삭제합니다. 3. 엔트리 포인트를 unpacking code의 시작점으로 두면 패킹이 끝이납니다. 언패킹의 원리는 다음과 같습니다. 1. 엔트리 포인트에따라 unpacking code 알고리즘을 실행합니다. 2. unpacking code 알고리즘은 packed data를 기반으로 결과값을 orig..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/AXobX/btrTWN8t11b/sXQkjXLHqIt3LNjp4BeQq1/img.png)
안녕하세요. 시스템해킹을 드디어 하려고 마음먹고 먼저 리눅스 환경을 설정해주겠습니다. 저는 윈도우 10을 쓰기때문에 WSL2로 우분투를 설치하겠습니다. - WSL2 우분투 설치 dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart wsl --set-default-version 2 파워쉘을 관리자권한으로 실행하여 위 명령어를 입력해줍니다. 이후 마이크로 스토어에서 ubuntu 18.04.5 LTS를 다운받아주었습니다. 관련해서 0x80070..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/CoHtR/btrT4HyA4ma/9cbciPGhUL7AK9bKNBThE1/img.png)
안녕하세요. 이번시간에는 리버싱 입문책으로따라 rena 17강을 크랙해보도록 하겠습니다. 리버싱 입문의 글쓴이는 이 17강을 통해서 어셈블리어를 익히는 것을 중점으로 설명합니다. 하지만 저는 어셈블리어와 친하기때문에 따로 일련번호 생성 로직을 읽어내는 부분은 정리하지않겠습니다. 그저 리버싱을 통해 크랙해보도록 하겠습니다. 하지만 어셈블리어와 친해지는 것은 중요하다는 것을 잊지않을 것 입니다. - 문제 인식 먼저 17강 파일을 실행시켜보도록 하겠습니다. 위에는 Nova, 아래는 1234를 넣어보고 check을 눌러보겠습니다. 디버거를 하드 드라이브에서 제거하라고 나오는 군요.. 하지만 이 문제는 일련번호에 관한 문제입니다. Nova를 가지고 일련번호를 프로그램 내부적으로 생성해내고 그것이 사용자가 입력한 ..