0x200 프로그래밍
2024. 3. 6. 14:17ㆍ해킹 : 공격의 예술
320x100
해킹의 본질은 기존의 규칙과 지식으로는 예상할 수 없고 의도하지 않은 사용법을 찾은 후 그것을 이용해 새롭고 창조적인 방법으로 문제 해결을 시도하는 것이다.
-p17-
제어구조
if-else, while 루프, for 루프
동쪽으로 난 메인가로 출발하라;
//whlie 루프 : while 조건이 참일 때 루프 안의 명령 세트를 반복적으로 수행
while (오른쪽에 교회가 없다) //오른쪽에 교회가 보일 때까지 메인가로 직진하라
메인가로 직진하라;
//If-Else : 어떤 일이 일어나면 어떤 일을 하고, 아니면 다른일
if (길이 막혔다면) //길이 막혔을 경우 해당 일을 수행
{
15번가에서 우회전;
파인가에서 좌회전;
16번가에서 우회전;
}
else 16번가에서 우회전; //길이 막히지 않았을 경우 해당 일을 수행
데스티네이션 로드에서 좌회전;
//for 루프 : 특정 횟수로 반복하고 싶을 때 사용. 카운터를 가진 while 루프.
for (i=0; i<5; i++) //(카운터 선언&초기화; 카운터 조건; 반복마다 카운터에게 명령을 행하는 부분)
1마일 직진하라;
743 데이티네이션 로드에서 멈춰라;
변수
바뀔 수 있는 데이터를 갖고 있는 객체
int(정수 변수)
float(부동소수점 변수)
char(단일 문자 변수)
상수
바뀌지 않는 변수
어셈블리어 언어
명령 <목적지>, <근원지>
mov 명령 근원지에서 목적지로 값을 이동시킴
sub 명령 빼기
inc 명령 증가
cmp 명령 값을 비교
-g 플래그 GDB 컴파일러 사용 시 GDB에서 소스코드를 볼 수 있는 추가 디버그 정보를 포함시킴
GDB 디버거
o 8진법으로 보여줌
x 16진법으로 보여줌
u 부호가 없는 표준 10진법으로 보여줌
t 2진법으로 보여줌
크기 문자
b 단일 바이트
h 2바이트의 하프워드
w 4바이트의 워드
g 8바이트의 자이언트
해커 정신은 막을 수 있는 성질의 것이 아니며, 쉽게 분류되거나 분석될 수 있는 것도 아니다.
해커는 항상 좀 더 깊은 지식을 탐구하기 위해 지식의 한계를 끊임없이 늘리고자 한다.
-p20-
320x100
320x100