DAY52
DAY52

서버 관리 해야할 것

.91 클라우드??
.94 백업
.118 로그

backup.sh
	#!/bin/sh
	set $(date)
	fname="backup-home$1$2$3.tar.gz"
	tar cvzf /st(IP)/$fname /home


본인의 서버에 패킷비트와 파일비트를 설치 후 129로 전송할 것
서버의 로그는 118로 보낼것

서버 내부 접속
https://192.168.0.252
서버 외부 접속
http://jeonjucom.kr:4242
https:://jeonjucom.kr:4252 (root/p@ssw0rd!2123)

rsync.sh작성
	#!/bin/sh
	rsync -avz --exclude-from=/etc/rsync_exclude.lst /st(IP) 192.168.0.94::backup

.sh파일에 777로 권한 부여후 ./로 실행

/etc/crontab
	00 00   * * *   root    /home/master/backup.sh
	00 00   * * *   root    /home/master/rsync.sh

systemctl restart cron

서버 일일 점검하기


Bootstrap Example

PEVIEWER를 사용해보고 CUCKOO와 비교 분석해보기


vmware

새로 시작하는 경우 호스트 네트워크 설정을 지웠다가 생성해야함
virtualbox 실행

cuckoo -d
cuckoo web -H 192.168.0.188

dev C++ 실행
192.168.0.188:8000


p3.exe를 PEview에서 분석하기
1. 파일 헤더 확인
IMAGE_NT_HEADER > IMAGE_FILE_HEADER
00000088	67BC07A3	Time Date Stamp	202502/24	05:46:11 UTC

CUCKOO와 비교
PE Compile Time
2025-02-23 21:46:11

=> 컴파일한 시간 동일 확인

2. 옵션 헤더 확인
프로세스 코드 실행 진입점 구하기
ImageBase + AddressOfEntryPoint = EIP 레지스터값

ImageBase
Pfile : 0000 00B4
Data : 0040 0000

AddressOfEntryPoint
Pfile : 0000 00A8
Data : 000014E0

0040 0000 + 0000 14E0 = 0040 14E0
EIP = 0040 14E0


Bootstrap Example

어셈블리 언어 이해하기


1. [p3.exe] 함수찾기
64,c8,12c,19찾기
이해 못했음 !!!!!!!!! 다시 공부하기...

Ctr + F2  
F8 한칸씩 내려가기
F9 실행
Ctr + G 이동
Shift + D 문자열 검색

2. [p4.exe] hello찾기

Shift + D
hello 찾아냄
주소 디스어셈블러 문자열주 문자열
0040150E mov dword ptr ss:[esp+1C] lp4.404000 "hello"

Ctr + G
0040 4000
puch 6F6C6C65 (아스키코드, hello)


3. [p5.exe] 아이디 비밀번호 찾기
0040150E | C74424 0C 00404000       | mov dword ptr ss:[esp+C],p5.404000      | 404000:"admin"
00401516 | C74424 08 06404000       | mov dword ptr ss:[esp+8],p5.404006      | [esp+08]:BaseThreadInitThunk, 404006:"123456"

00404000위치
61
64:6D
696E
=> admin
    31323334
35 36
=> 123456

Easy_CrackMe.exe 문제풀기

1. 그냥 실행하여 동작되는 내용 확인
	if(id == "admin") {
		printf("");
	}  else{
		printf("incorrect Password");
	}
	return 0;
조건문 있을 것이라고 예상할 수 있음

2.  문자열 Incorrect Password 검색

주소=0040113C
디스어셈블리=push easy_crackme.406030
문자열 주소=00406030
문자열="Incorrect Password"

3. 스택
주요 정보가 스택을 통해 전달, 저장될 수 있음

레지스터와 레지스트리는 다르다!!
x - x - x - x - x - x - x - x - x - x - x (11자리)
ESP : Extended Stack Pointer 레지스터
스택을 가리키는 포인터 역할
스택은 함수 호출 시 지역 변수와 반환 주소
esp+4
esp+5
esp+a
EAX
ESI
EIP

휴대폰(호출) > getDlgItemTextA > f2 (eip고정) > 되돌아와서 f9(실행)
ctrl + f2 재시작
f9 실행
f8 한칸씩 내리기

*jle
비교해서 값이 작을 경우 해당 주소로 점프

암호:Ea5yR3versing
esp+5; 'a'
esp+A; '5y'
esp+10; 'R3versing'
esp+4 ; 'E'