본문 바로가기

분류 전체보기137

[Multimedia] 사진 속에서 빨간색이... 예전에 풀었던 문제였는데 풀이를 올리지 않아서 겸사겸사 다시 한번 풀어보았다. 문제에서 주어진 png 파일을 보면 완전 귀엽뽀짝한 갱얼쥐 한마리가 있다. 헥스에디터로 열어본 결과 파일 시그니처도 맞았고, 수상하게 파일 크기가 크거나 한 점이 없었기 때문에 스테가노그래피라고 생각했다. incoherency.co.uk/image-steganography/#unhide Image Steganography Each channel (red, green, blue) of each pixel in an image is represented by an 8-bit value. To hide the secret image inside the cover image, we replace the n least significa.. 2020. 9. 28.
리버싱 핵심 원리 10장 (함수 호출 규약) 함수 호출 전에는 파라미터를 스택을 통해 전달한다. 스택은 프로세스에서 정의된 메모리 공간이며, PE 헤더에 그 크기가 명시되어 있다. 이는 프로세스가 실행될 때 스택 메모리의 크기가 결정된다는 것과 같다. (동적 메모리 할당 X)ESP(스택 포인터)는 스택의 현재 위치를 가리키는 역할을 하는데, 함수 호출 후에 ESP를 어떻게 정리하는지에 대한 약속이 함수 호출 규약이다. 주요 함수 호출 규약은 3가지로 볼 수 있고, 이에 대해서 상세히 살펴보도록 하자! 1. cdecl 주로 C언어에서 사용되는 방식으로, Caller(호출자: 함수를 호출한 쪽)에서 스택을 정리하는 특징을 갖고 있다. 이 방식의 장점은 C언어의 printf() 함수와 같이 가변 길이 파라미터를 전달할 수 있다는 점이다. 2. stdca.. 2020. 9. 28.
리버싱 핵심원리 9장(Process Explorer) 및 Process Explorer 다운로드 Process Explorer은 Windows 운영체제에서 제공하는 프로세스 관리도구이다. https://docs.microsoft.com/en-us/sysinternals/downloads/process-explorer Process Explorer - Windows Sysinternals Find out what files, registry keys and other objects processes have open, which DLLs they have loaded, and more. docs.microsoft.com 위 사이트에서 다운로드 가능하다. 특정 파일이나 디렉토리가 열려있는 프로그램이 무엇인지 알 수 있다. 프로세스 탐색기 (Process Explorer)는 어떤 핸들 및 DLL 프로세스.. 2020. 9. 28.
[Multimedia] 원래 의미가 없는 것들도… 오늘의 문제는 spam.txt 에서 의미없는 무언가에서 의미 있는 무언가(?)를 찾는 문제이다. 문제에서 주어진 파일을 열어보면 메세지가 나온다. 해독을 해보면 그냥 광고다. 그냥 스팸메일...ㅠ.ㅠ 의미가 없어보이는 이 스팸 파일에도 메시지가 숨겨져 있을 것이다. www.spammimic.com/ spammimic - hide a message in spam www.spammimic.com spammimic 사이트는 짧은 메시지를 스팸으로 암호화하는 프로그램에 대한 액세스를 제공한다.암호화된 스팸 파일을 디코딩 해보자! 텍스트를 복붙해준 뒤, 하단의 Decode 버튼을 눌러주면 된다. 그럼 암호문이 해독이 되고, 플래그가 나오게 된다! 정답은 flag_is_b3st_spam_st3g4n0 2020. 9. 28.
Easy Crack - 미완성 reversing.kr/challenge.php Reversing.Kr Copyright © 2012-2020 Gogil All Right Reserved. reversing.kr Challenge에서 Easy Crack을 클릭하면 Easy_CrackMe.exe 파일을 다운로드 받을 수 있다. 이 파일을 실행해보자! 위와 같은 창이 하나 나오고 아무 값이나 입력하면 에러창이 뜬다. 맞는 비밀번호를 입력해야 풀 수 있는 문제같다. Ollydbg를 이용해 열어주었다. 아까 패스워드를 입력했을 때 'Incorrect Password' 라는 문구가 떴었다. 일반적으로 윈도우 환경에서 메시지 박스를 출력할 때는 MessageBox() API 함수를 이용한다. MessageBox() 함수가 사용됐는지 확인하기 위해.. 2020. 9. 21.
11장 리눅스 시스템 조사 리눅스 시스템은 유닉스를 기반으로 개발된 운영제체다. 오픈 소스 소프트웨어로써 다중 사용자를 지원하고, 멀티 태스킹 기능을 제공하는 등의 특징을 갖고 있다. Ubuntu, Redora, Debian 등의 다양한 리눅스 배포판이 있다. 1. 리눅스는 명령어 기반 시스템이다. 즉, 모든 입출력은 문자를 기반으로 수행된다는 것인데, 이는 운영체제의 핵심인 커널이 명령어 기반의 입출력을 하도록 작성되어 있기 때문이다. 2. 디렉토리가 있다. 리눅스는 윈도우와 달리 드라이브 문자가 존재하지 않으며, 필요한 파일시스템을 마운트하여 사용한다. 디렉토리는 절대경로와 상대경로로 표시할 수 있으며, 내용은 다음과 같다. 경로 내용 . 현재 디렉토리 (상대경로) .. 상위 디렉토리 (상대경로) / (루트 디렉토리) 최상위 .. 2020. 9. 16.