본문 바로가기

전체 글

(40)
[JAVA] 기본 예제, 데이터 타입, 식별자, 상수, 변수 예제 package chap02; //예제 2-1 : Hello, 자바 프로그램의 기본 구조 public class Hello { //Hello 클래스 선언 public static int sum(int n, int m) { //정수 n과 m을 매개변수로 하는 메서드 sum선언 //public=공개 static=정적 메서드 의미 return n+m; } //main() 메소드 선언 public static void main(String[] args) { // TODO Auto-generated method stub int i=20; //정수형 변수 i선언과 동시에 정수 20의 값 저장 int s; //정수형 변수 s 선언 char a; //문자열 a변수 선언 s=sum(i,10); //sum()메소드 호..
[Java] 기본 프로젝트 생성, 간단한 출력 이클립스를 활용한 기본 프로젝트를 생성하는 방법 및 문자열을 출력하는 것을 포스팅해보고자 합니다. 자바 프로젝트 생성 이클립스가 설치되었다는 가정 하에, 좌측 Project Explorer란을 우클릭해주신 다음 [New] -> [Project]를 클릭합니다. 이와 같이 New Project 라는 프로젝트를 생성하는 창이 실행되는데, [Java Proejct] -> [Next] 를 눌러줍니다 Next를 눌러주시면 New Java Project 를 생성하는 창이 뜹니다. 두번째 란에서는 JRE관련하여 설정하는 파일이 뜹니다. 이와 같이 자바 프로젝트가 생성되는 것을 보실 수 있습니다. chap02는 자바프로젝트의 이름이며, 하위 디렉토리로 가시면 [src]가 보입니다. 이 src폴더는 'soource'의 약..
[악성코드] 실습용 기본 보안 설정 악성코드를 실습하기 전 보안 설정을 낮춥니다. 그룹 정책 시작 -> 실행 -> gpedit.msc 입력 하면 '그룹 정책'창이 뜹니다. 위와 같은 그룹 정책 창이 뜨는데, 사용자 구성 -> 관리 템플릿 -> Windows 구성 요소 -> 첨부파일 관리자 -> 첨부 파일에 대한 기본 위험 수준을 클릭합니다. 첨부 파일에 대한 기본 위험 수준은 사용(낮은 위험 수준) 혹은 사용 안함으로 바꿉니다. 서비스 설정 시작 - 실행 - services.msc 를 입력합니다. Security Center 클릭 -> 서비스 중지
[Reversing] x64dbg 변수 추정, 간단한 코드분석 이번 포스팅은 아래 c언어로 작성된 소스코드를 토대로 만들어진 exe(실행 파일)을 x64dbg 분석 툴을 이용해서 분석하는 것을 목표로 합니다. #include int main() { int a, b, c, d; a = 22; b = 5; c = a + b; d = a - b; printf("a = %d\nb = %d\nc = %d\nd = %d", a, b, c, d); } 주요 분석 부분의 메모리 주소는 다음과 같습니다. 메모리주소 어셈블리코드 주석(설명) 00401003 sub esp,10 변수가 4개 00401006 mov dword ptr ss:[ebp-4], 16 ebp-4 a=(22) 0040100D mov dword ptr ss:[ebp-8], 5 ebp-8 b=(5) 00401014 m..
[Python] 거북이로 x표시, 원 그리기 파이썬의 turtle 모듈은 대학교에서 파이썬 교양 수업이나 혹은 기초 파이썬 강의에서 맛보기로 기초적인 그림을 그릴 때 사용되는 모듈입니다. 거북이로 그리는 것이 목적일 경우, 스크립트 모드 보다는 한 번씩 명령을 내려 그에 맞는 반응을 즉각적으로 하는 shell모드로 하는 것이 간편합니다. 명령을 내리고 바로 결과를 보면서 계속해서 코드를 입력할 수 있기 때문입니다. 아래 코드를 토대로 간단한 함수를 만들어보고자 합니다. 1.import turtle 먼저 이번 포스팅의 목적은 거북이를 통해 간단한 도형과 그림을 그리는 것입니다. 그러므로 import turtle을 작성하는 이유는 거북이를 통해 그림을 그릴 수 있는 모듈을 불러와야 하기 때문입니다. 그 역할을 하는 모듈이 바로 turtle.py죠. t..
[Reversing] 정적 분석,동적 분석, Hex Code,Assembly Code, 패치와 크랙 본 글은 '리버싱 핵심원리' 서적을 바탕으로 공부한 내용을 바탕으로 서술한 포스팅입니다. 1.1리버스 엔지니어링(Reverse Engineering, RE:역공학) 물건이나 기계장치 혹은 시스템 등의 구조, 기능, 동작 등을 분석해 원리를 이해하며 단점을 보완하고 새로운 아이디어를 추가하는 일련의 작업 1.2리버스 코드 엔지니어링(Reverse Code Engineering, RCE) 소프트웨어 분야의 리버스 엔지니어링 1.2.1 리버싱 분석방법 1) 정적 분석 파일의 겉모습을 관찰하여 분석하는 방법으로, 파일을 실행하지 않는 분석방법입니다. 파일의 종류(EXE, DLL, DOC, ZIP 등), 크기, 헤더(PE), 정보, Import/Export API, 내부 문자열, 실행 압축 여부, 등록 정보, 디..
[Reversing] 레나 튜토리얼 04 - pixtopianbook파일 registered version으로 변경 레나 튜토리얼 04 오늘은 레나 튜토리얼 04번을 풀어보고자 합니다. 레나 튜토리얼 04번의 핵심은 pixtopianbook 프로그램을 실행했을 시 리버싱 프로그램을 통해 UNREGISTERED VERSION의 문구를 REGISTERED로 바꾸는 것입니다. pixtopianbook.exe를 실행했을 때, 바로 보이는 창의 문구가 UNREGISTERED VERSION으로 뜹니다. 또, 상단 바의 Help - About PixtopianBook을 클릭했을 때 나오는 창의 Unregistered version v1.07이라고 보이는 단어로 registered로 수정해주도록 하겠습니다. 수정 Ollydbg 프로그램을 실행시킨 후 PixtopianBook파일을 열어 분석합니다. 본래 처음 뜨는 창은 CPU지만, ..
[Reversing]Ollydbg UDD Directory Absent, UDD 경로 오류 Ollydbg 프로그램을 실행하자마자 해당 문구가 뜨게 되는 경우가 있습니다. 오늘은 이 오류를 해결하는 방법에 대해서 알아보고자 합니다. UDD Directory doesn't exist. Please specify valid path in Optios | Appearance | Directories, otherwise breakpoints, comments and analysis data will be lost after debugged program terminates. 저의 경우 원래 제 노트북-운영체제 내의 ollydbg파일을 가상 머신-운영체제 내로 옮기려다 보니까 기존에 설정되어 있던 UDD PATH가 맞지 않아 해당 오류가 뜨게 되었습니다. 먼저 UDD Directory absent오류는 ..