본문 바로가기

리버싱!

(32)
DKOM을 이용한 프로세스 권한 상승 승현형님의 스터디 자료를 보고 공부했습니다. 개념 PEB->Process Environment Block , TEB->Thread Environment Block EPROCESS->Executive Process , ETHREAD->Executive Thread 프로세스가 생성되면 커널메모리에 EPROCESS 구조체 생성 및 사용할 스레드마다 ETHREAD도 할당 유저메모리에서 프로세스, 스레드에 대한 정보를 가진 구조체인 PEB, TEB 생성 DKOM이란? Direct Kernel Object Manipulation의 약자로써 커널 오브젝트를 직접 수정하는 행위를 의미한다. DKOM으로 할 수 있는 일에는 프로세스 은닉, 디바이스 드라이버 은닉, 스레드 권한 상승, 프로세스 권한 상승, 포렌식 회피등이..
Christmas CTF 2019-welcome rev 처음에는 CRC를 역연산 해보려고 삽질하다. 그냥 부르트 포싱했다 #include #include #include #include #include using namespace std; uint32_t rc_crc32(uint32_t crc, const char *buf, size_t len) { static uint32_t table[256]; static int have_table = 0; uint32_t rem; uint8_t octet; int i, j; const char *p, *q; /* This check is not thread safe; there is no mutex. */ if (have_table == 0) { /* Calculate CRC table. */ for (i = 0; i..
방독면책-어셈블리2 보호되어 있는 글입니다.
방독면책-어셈블리 보호되어 있는 글입니다.
google ctf-malvertising Malvertising이란? 멀버타이징(Malvertising)은 악성 프로그램을 뜻하는 멀웨어(Malware) 혹은 '악의적인'이라는 뜻의 의미하는 멀리셔스(Malicious)와 광고 활동을 뜻하는 애드버타이징(Advertising)의 합성어다. 즉 멀버타이징은 광고 서비스의 정상적인 네트워크를 이용하여 악성코드를 유포 및 감염시키는 방법을 말한다. 악성코드 제작자는 그럴 듯한 도메인 이름으로 위장된 광고 웹 사이트를 제작 후 광고 서비스에 이를 광고한다. 그리고 사용자가 해당 웹 사이트를 접속했을 때 취약한 페이지로 리다이렉트 되도록 설정해 둔다. 그 이후에 정상 웹 사이트로 이동한다. https://malvertising.web.ctfcompetition.com/ 광고를 클릭하면 google.com..
reversing.kr-Easy_Keygen 이름을 입력하여 이름을 가지고 시리얼을 만드는 간단한 문제이다. IDA와 ollydbg를 보면 알 수 있듯이 for문 로직에서 나온 시리얼 값인 5B134977135E7D13을 이용해 구해주면 된다. #include #include #include #include using namespace std; int main() { string serial = "5B 13 49 77 13 5E 7D 13"; vector nam; string nam2; istringstream iss(serial); string str; while (iss >> str) { nam.push_back(str); } int j=1; for (int i = 0; i 3) j = 1; nam2 = nam..
reversing.kr-Easy Crack IDA에서 string들을 확인한 결과 맞았다는 문자열과 틀렸다는 문자열이 이 함수에서 사용되는 것을 알 수 있었다. 해당 부분을 ollydbg를 통해 동적으로 분석한 결과 이부분이 입력한 값(esp+4)+1이므로 입력한 값의 두번째 글자가 a여야 한다는 것이다. 그 이후는 strncmp로 세번째 네번째는 "5y" strcmp로 끝까지 "aR3versing"이고 이후 부분을 다시 ollydbg를 통해 보면 (ESP+0x4)의 값 즉 입력값의 첫번째 글자가 E여야 한다는 것이다. 즉 키는 "Ea5yR3versing"이다.
codegate2019-the matrix the matrix는 gameboy 문제로서 bgb를 사용하여 풀었다.엄청난 삽질의 결과로 5번죽고 6번째에 죽으면 기회를 한번 더 주고 빨간약을 먹고 2스테이지로 넘어간다.(c402->death count)2스테이지에선 오른쪽 친구한태 말을 걸면 메트릭스에 접속하라고 하고 멈추게 되고 왼쪽 친구한태 접속하면 key를 체크하라고 하는데 여기서 c414를 6으로 c422를 1로 셋팅해주면 open the gate가 열리게 된다. 그 후 ssssssas 후 enter를 누르면 대답은 매트릭스안에 있다는 말만 계속 반복한다. game-boy의 구조이다. 처럼 character ram에 c230부분의 값을 넣으면 이렇게 bgb에서 vram viewer를 통해 플래그 같은 문자열이 있는 것을 알 수 있다. [ 출..