SK shieldus Rookies 16기 (애플리케이션 보안#05)

만두다섯개·2023년 11월 8일

SK 루키즈 16기

목록 보기
12/52

주요 정보

  • 교육 과정명 : 클라우드기반 스마트융합보안 과정 16기
  • 교육 회차 정보 : '23. 11. 8. 애플리케이션 보안 #05

참고 정보

  • 윈도우 11은 TPM(신뢰가능한 모듈)이 있어야 설치 가능. (가상으로 설치 가능)
  • 해당 설정은 버츄얼 박스 – 칼리 리눅스 – 시스템에서 설정 가능
  • 펜 테스팅 관련 참고 사이트

학습 요약

  • 칼리 리눅스에 DVWA 설치 방법
  • 가상환경에서 게스트 네트워크 종류의 차이

칼리 리눅스 설치 방법

  • 칼리 리눅스 페이지 에서 해당하는 OS에 맞는 이미지 파일과 가상 머신을 다운로드 받는다.
  • 칼리 리눅스 설치 과정 중 오류가 발생하거나 지나치게 오래 걸릴때면 해당 가상 OS 삭제 후 재생성 가능하다. 단 이때 이미지 파일까지 삭제옵션을 누르면 원본 이미지 파일 또는 원본 디스크까지 삭제되어버리니 유의할 것.
  • 디스크 이미지 파일을 사용시, 초기 계정 [kali, kali] 이다.
  • 칼리 리눅스 이미지를 새로 다운받아 가상 OS 설치 시, UUID 중복 문제 해결방법 : 새로운 디스크 이미지의 UUID를 자동랜덤생성
"c:\Program Files\Oracle\VirtualBox\VBoxManage.exe" internalcommands sethduuid 이미지
  1. 칼리 리눅스 설치 (하드 디스크 파일 사용)

  • 가상 머신에서 새로 생성 – 생성할 가상 머신 이름 지정 – 하드 디스크 – 기존 가상 하드 디스크 파일 사용 – 다운로드 받은 디스크 이미지를 사용한다.
  • 가상 머신을 돌리는 컴퓨터나 노트북 사양에 무리가지 않게 적절한 메모리와 cpu 할당
  • ‘23. 11. 08 리눅스 한글 패치 오류로 패치 불가.
  • 칼리 리눅스 SSH 서버 구동(CMD창에서 ssh service start)
  • MobaXterm : putty처럼 SSH 사용 칼리 리눅스에 접속 가능하다. (핑거프린터 기능)

kali Linux 설치 후 기본 세팅

  • 필자는 교육용 노트북, 개인 노트북의 버츄얼 박스에 칼리 리눅스를 설치했다.
  • 둘 다 네트워크 모드를 브리지 모드로 설정해 추후 해킹 툴 사용시 활용 예정이다.

Kali Linux DVWA 설치

  • DVWA 참고
  • 첫번째 방법(내가 찾은방법)으로 하면, eh0 주소, I/O 주소 2개가 돌아가는듯..
  • 아래 방법대로 하면 됨. 그러나 확인하지 못한 점 2가지가 있음.
    1. sudo –i 권한으로 설치해서 온전히 설치가 된 건지?
    1. DB USER 추가에서 p@sswOrd 가 아닌 p@ssw0rd (숫자 0 ) 으로 설정해서 된건지?
  • 사전 작업
    1. 아파치 설치(load 되있지만 실행 X)
    2. mysql 설치- (load 되있지만 실행 X)
  1. 아파치 서버 실행
  • CMD 창에서 실행한다
sudo apt update
sudo apt install apache2
sudo service apache2 start
sudo service apache2 start enable
sudo service apache2 status (Active: active확인 후 Ctrl +C 빠져나오기)
  1. DB 실행
sudo apt install mariadb-server
sudo service mysql start
sudo service mysql enable
sudo service mysql status (Active: active확인 후 Ctrl +C 빠져나오기)
  1. php 다운로드
- apt install software-properties-common
- sudo apt-get install python3-launchpadlib
- apt update
- apt install php8.0
- sudo apt install php 
  1. DVWA 다운로드
cd /var/www/html
sudo git clone https://github.com/digininja/DVWA
  1. [Kali Linux Gedit 설치], 해당항목 참고

  2. DVWA 파일 초기 설정

cd /var/www/html/DVWA/config
sudo cp config.inc.php.dist config.inc.php
nano config.inc.php  OR gedit config.inc.php (그냥 넘어감)
  1. DB 사용자 생성 및 권한 추가
  • DB는 mysql의 마리아 DB 사용
sudo mysql -u root –p  (DB 계정 kali linux 계정 동일)
create database dvwa;
create user dvwa@localhost identified by 'p@ssw0rd'; ( 숫자 0 으로 해도 상관없음)
grant all on dvwa.* to dvwa@localhost;
flush privileges;
exit;
- flush privileges; (flush: 쏟다.) grant 테이블을 load 해 변경사항을 DB에 즉각 반영한다.
  1. 칼리 리눅스 DVWA 접속 확인
- 파이어폭스 브라우저에서 – 127.0.0.1 접속 ( 아파치 실행 확인)
- 127.0.0.1/DVWA 입력 
- admin / password
- Database Setup 창이 나오면서 아래로 내리면 Create/Reset DB 클릭하면 로그인 창
- 재 로그인 – 왼쪽에 생성된 툴 확인
- 재접속 후 DVWA Security - Low – submit

설치 방법(강의 과정.ver)

sudo apt update

- apache2+ php + mysql  설치

  sudo apt install libapache2-mod-php
  sudo apt install php
  sudo apt install php-mysqli
  sudo apt install php-gd

  sudo apt install apache2
  sudo service apache2 start
  sudo service apache2 enable
  sudo service apache2 status

  sudo apt install mariadb-server
  sudo apt service mysql start
  sudo apt service mysql enable
  sudo apt service mysql status

  sudo apt install php

  cd /var/www/html
  sudo git clone https://github.com/digininja/DVWA

  cd /var/www/html/DVWA/config
  sudo cp config.inc.php.dist config.inc.php
  nano config.inc.php   #user , passsword, database 확인

  sudo mysql -u root -p
  create database dvwa;
  create user dvwa@localhost identified by 'p@ssw0rd';
  grant all on dvwa.* to dvwa@localhost;
  flush privileges;
  exit;

Mysql 기본 사용명령어

- sudo mysql -u root –p (DB 접속)
- show databases; (DB 목록 생성)
- drop user ‘user’@’localhost’; (사용자 삭제)
- drop database databasename; (DB 삭제)

Kali Linux Gedit 설치

- 멀티 창 방식으로 메모장처럼 수정 가능(GUI 환경에서 설정가능)
- apt-get update
- sudo apt-get install gedit –y
- gedit # 단독실행(새 창열기)
- 만약 현재 경로에 있는 [config.inc.php]를 Gedit사용 편집 시, gedit ./config.inc.php 실행
- gedit (새 창열기)

VirtualBox 네트워크 종류 및 구성

-가상머신 네트워크 참고

  • VirtualBox 에서는 네트워크 모드 8가지 존재.
  • VirtualBox – 설정 – 네트워크 – 어댑터1 – 다음에 연결됨

NAT 모드

  • 호스트 머신과 외부는 상호 접근 가능
  • 게스트간 접근 불가능
  • 게스트는 외부로 접근 가능하지만, 외부에서는 게스트 포트 포워딩 시에만 접근 가능
  • 비슷하게 게스트는 호스트로 접근 가능하지만, 호스트는 게스트로 포트 포워딩 시에만 접근 가능

NAT 네트워크 모드

  • NAT 모드에서 게스트들간의 접속이 가능하다.

Briedge 모드

  • 가상 머신은 호스트의 NIC 연결된다.
  • 호스트의 네트워크 환경이 변경될 때 마다 가상머신의 브릿지 연결도 재설정 필요
  • 가상머신 간, 호스트 간, 외부와의 접근이 모두 가능해진다.

호스트 전용 어댑터 모드

  • 호스트를 통해서만 외부와 접속 가능하다. 반대도 마찬가지
  • 게스트들 간 접속은 가능하나, 외부와의 바로 접속이 불가능하다.

내부 네트워크 모드

  • 호스트 전용 어댑터 모드에서 게스트 들과 호스트와의 연결도 불가능한 모드

일반 드라이버 모드

  • 특정 이더넷 카드(LAN 카드) 6종류만 사용가능하다
  • UDP, 터널 네트워킹과 VDE(가상 분산 이더넷) 기능 지원
profile
磨斧爲針

0개의 댓글