보안/시스템 해킹

[ 시스템 해킹 ] C/ Python 복습 , WSL2 세팅

haena02 2022. 7. 9. 03:19
반응형

시스템 해킹 공부는 DreamHack의 시스템 해킹 강의를 보며 하였다.

 

1. 사전 지식

이 강의를 수강하기 위해서는 C언어와 python의 기본 지식이 필요하다.

기본지식을 테스트 하기 위해 아래의 두 코드를 읽고 "Welcome Hackers :) "가 출력되는 입력값을 찾아보면 된다.

 

#include <stdio.h>
#include <stdlib.h>
#include <string.h>


int main() {

  int sz = 0x30; // 48 저장
  char *buf = (char *)malloc(sizeof(char) * sz);  // 동적할당으로 48바이트만큼 할당
  
  puts("Hello World!");
  printf("Education + Hack = ?\\n");
  fgets(buf, sz, stdin);  // 48만큼 buf에 입력받기
  
  
  if (!strncmp(buf, "DreamHack", 9))  // 입력받은게 9글자가 DreamHack과 일치한다면
    printf("Welcome Hackers :)\\n");  
  else
    printf("No No :/n");
    
  return 0;
}

/*
"DreamHack" 입력 시 "Welcome Hackers :)" 출력
*/

 

quiz = [116, 66, 85, 81, 93, 120, 81, 83, 91]

for i in range(len(quiz)):
    quiz[i] ^= 0x30  #48과 xor 해서 대입
    
quiz = ''.join([chr(_) for _ in quiz])  # 리스트를 각각 아스키코드로 수정한 뒤 공백을 두고 합치기
answer = input() # 입력받기

if answer == quiz:
    print("Welcome Hackers :)")
else:
    print("No No :/")
    
 /*
"DreamHack" 입력 시 "Welcome Hackers :)" 출력
*/

 

2. 환경설정

 

이 강의는 우분투 18.04 기준으로 작성되었기에 이에 맞게 환경을 구축해야한다.

이를 위해 가상 머신(Virtual Machie, VM)을 사용해야한다

 

 

다음과 같이 실습환경 구축을 완료하였다. 우분투가 깔려있어 귀찮지 않았다.

 

앞으로 두 차례정고는 환경구축과 배경지식을 공부할 것이다

반응형