์ƒˆ์†Œ์‹

์ธ๊ธฐ ๊ฒ€์ƒ‰์–ด

๐Ÿ“  Secure

2022-06-20

  • -
๋ฐ˜์‘ํ˜•



์ปดํ“จํ„ฐ๊ฐ€ ์ˆซ์ž๋ฅผ ์ฝ๋Š” ๋ฐฉ์‹

๋น… ์—๋””์•ˆ

๋ฆฌํ‹€์—๋””์•ˆ
nibble (4bit) : 
CHAR (1byte) : 1A 2B EC 56
WORD (2byte) :  1A 2B EC 56
DWORD (4byte) :  1A 2B EC 56

--> ๋ฆฌํ‹€ ์—๋””์•ˆ์œผ๋กœ ์ฝ์„ ์‹œ
 
CHAR (1byte) : 56 EC 2B 1A
WORD (2byte) : EC 56 1A 2B 
DWORD (4byte) : EC 56 1A 2B

ollydbg

0000 0000 ~ FFFF FFFF (32bit)
00000000 00000000 ~ FFFFFFFF FFFFFFFF (64bit)

๋ชจ๋“  ๋ช…๋ น์–ด์˜ ๊ตฌ์กฐ๋Š”
OPcode + Operand๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๋‹ค
(์‹คํ–‰ ๋ช…๋ น) + (์ฃผ์†Œ)

cd /etc/networks/interface
vi ./test.txt
mv ./test.txt ../test.txt  ==> Opcode + Operand + Operand
Opcode + Operand + Operand + Operand



CPU ์— ๋ถ™์–ด์žˆ๋Š” ์ €์žฅ์žฅ์น˜ : ๋ ˆ์ง€์Šคํ„ฐ
1) ๋ฒ”์šฉ ๋ ˆ์ง€์Šคํ„ฐ
1-1) ์‚ฐ์ˆ  ๋ ˆ์ง€์Šคํ„ฐ
      - AX(Accumulation) ๋ˆ„์‚ฐ๊ธฐ, ๋ฆฌํ„ด๊ฐ’
      - BX(Base) ์ฃผ์†Œ ์ง€์ •
      - CX(Counter) ๋ฐ˜๋ณต๋ฌธ 
      - DX(Data) AX ๋ณด์กฐ
1-2) ์ธ๋ฑ์Šค ๋ ˆ์ง€์Šคํ„ฐ
      - SI DI
1-3) ํฌ์ธํ„ฐ ๋ ˆ์ง€์Šคํ„ฐ***
      - SP BP IP(๋‹ค์Œ ์‹คํ–‰ํ•  ๋ช…๋ น์–ด ์ฃผ์†Œ)

2) ํ”Œ๋ ˆ๊ทธ ๋ ˆ์ง€์Šคํ„ฐ

Zero Flag : ์—ฐ์‚ฐ๊ฐ’์ด 0์ผ ๊ฒฝ์šฐ 1๋กœ ์„ค์ •๋œ๋‹ค.
Carry Flag : ์—ฐ์‚ฐ๊ฐ’์— ์˜ฌ๋ฆผ ๋ฐ ๋นŒ๋ฆผ์ด ์žˆ์„ ๊ฒฝ์šฐ 1๋กœ ์„ค์ •๋œ๋‹ค
Sign Flag : ์—ฐ์‚ฐ๊ฐ’์˜ ์ตœ์ƒ์˜ ๋น„ํŠธ๊ฐ€ 1์ผ ๊ฒฝ์šฐ 1๋กœ ์„ค์ •๋œ๋‹ค.



์•ž์— E๊ฐ€ ๋ถ™์œผ๋ฉด 32bit ํ”„๋กœ๊ทธ๋žจ
์•ž์— R์ด ๋ถ™์œผ๋ฉด 64bit ํ”„๋กœ๊ทธ๋žจ

ollydbg ๊ธฐ๋ณธ ์‚ฌ์šฉ๋ฒ•

์‹คํ–‰
F7(ํ•œ์ค„ ์‹คํ–‰, ์„ธ๋ถ€ํ•ญ๋ชฉ O)
F8(ํ•œ์ค„ ์‹คํ–‰, ์„ธ๋ถ€ํ•ญ๋ชฉ X)
F9(์ „์ฒด ์‹คํ–‰)

๋‹ค์‹œ ์‹œ์ž‘
Ctrl + F2

BreakPoint
F2
์‹คํ–‰์„ ํ–ˆ์„ ๋•Œ BP์—์„œ ๋ฉˆ์ถ”๋„๋ก ์„ค์ •



00401144์—์„œ ํ”„๋กœ์„ธ์Šค ์ƒํƒœ๊ฐ€ ๋Œ€๊ธฐ๋กœ ๋ณ€๊ฒฝ


if( 1 == 2 ){
asdfsadfsadfsdaf
}
  ==> ๋ฆฌ๋ฒ„์‹ฑ์„ ํ•˜๋ฉด

cmp [0000 0001] A //  [0000 0010] B

A-B = ๊ฐ’์ด 0์ด๋ฉด ๊ฐ™์€๊ฑฐ์•ผ
A-B = ๊ฐ’์ด 0์ด๋ฉด Zero Flag๊ฐ€ ์˜ฌ๋ผ์˜ค๋Š”๊ฑฐ์•ผ


jmp -> ํ•ด๋‹น ์ฃผ์†Œ๋กœ ์ ํ”„ํ•˜์‹œ์˜ค
jnz ->

1000 + 1000 = 0000
       Carry Flag๊ฐ€ 1๋กœ ์˜ฌ๋ผ๊ฐ„๋‹ค

--> 0001 0000



STACK : 0019FF2C [00401149]

CALL ํ•จ์ˆ˜๋ฅผ ๋“ค์–ด๊ฐ€๋Š” ๊ฒฝ์šฐ ๋‹ค์Œ ์ฃผ์†Œ๊ฐ€ Stack์— ์ €์žฅ์ด ๋˜๋ฉฐ,
RET์„ ํ†ตํ•ด์„œ ์ €์žฅ๋œ ์ฃผ์†Œ๋กœ ๋ณต๊ท€๊ฐ€ ๋œ๋‹ค.








๋ฐ˜์‘ํ˜•

'๐Ÿ“  Secure' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

2022-06-22  (0) 2022.06.28
2022-06-21  (0) 2022.06.28
2022-06-16  (0) 2022.06.28
DLL Ejection  (0) 2022.06.28
Windows PE ์‹ค์Šต ( ์ˆ˜์ • ํ•„์š” )  (0) 2022.06.27
Contents

ํฌ์ŠคํŒ… ์ฃผ์†Œ๋ฅผ ๋ณต์‚ฌํ–ˆ์Šต๋‹ˆ๋‹ค

์ด ๊ธ€์ด ๋„์›€์ด ๋˜์—ˆ๋‹ค๋ฉด ๊ณต๊ฐ ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค.