Docker installation (Ubuntu)

https://docs.docker.com/engine/install/ubuntu/

기존 패키지를 제거한다.

1
$ for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done

Install using the apt repository

1
2
3
4
5
6
# Add Docker's official GPG key
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

apt repository 추가

1
2
3
4
5
6
# Add the repository to Apt sources:
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update

최신 버전 설치

1
$ sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

To verify that Docker is running, use:

1
$ sudo systemctl status docker

Some systems may have this behavior disabled and will require a manual start:

1
$ sudo systemctl start docker

Verify that the installation is successful by running the hello-world image:

1
$ sudo docker run hello-world

https://docs.docker.com/engine/install/ubuntu/

Kalli linux 01

Kali linux 를 다운로드 한다.

Kalia linux 다운로드에 VB 용 게스트 이미지가 제공되고 있다. 이것을 다운받아 사용한다

VB 메인 화면에서 “+” 추가로 다운 받은 게스트 이미지를 추가할 수 있다.

인터넷 + 게스트와 통신

진행을 위해서 인터넷 사용과 Kali linux 게스트 머신 사이에 네트워크 연결이 필요하다.

여기서 네트워크 어댑터를 2가지 방법으로 설정해서 인터넷 + 통신을 설정한다.

NAT 와 Host-only

  1. NAT 설정

게스트에서 외부 인터넷을 호스트 머신의 네트워크를 이용해 변환해 사용한다.

호스트 머신에서 게스트 머신으로 통신이 안된다.

오직 인터넷 용이다.

  1. Host only 설정

호스트에서 게스트로 통신이 가능하다.

혹은 다른 게스트에서 게스트로 통신이 가능하다.

NAT 와 Host-only 설정

설정 -> 네트워크에서 어댑터를 추가한다

호스트에서 interface 를 확인해 보면 다음 같이 추가된 것을 볼 수 있다

1
2
3
4
5
6
7
Ethernet adapter 이더넷 3:

Connection-specific DNS Suffix . :
Link-local IPv6 Address . . . . . : fe80::af41:7d81:b36a:5a23%52
IPv4 Address. . . . . . . . . . . : 192.168.56.1
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . :

ip addr 명령으로 추가하 이더넷 어댑터를 확인하면 NAT 용 어댑터는 ip가 할당되어 보인다.

추가한 2번째 어댑터는 IP 가 없어서 강재로 dhcp 요청을 해야 한다.

1
sudo dhclient eth1

혹은 interfaces 파일을 직접 수정할 수 있다.

/etc/network/interfaces

1
2
3
4
5
auth eht0
iface eht0 inet dhcp

auth eht1
iface eht1 inet dhcp

그리고 networking 서비스를 재시작한다.

sudo systemctl restart networking

혹은 interfaces 파일에 수동 ip를 줄 수 있다.

auto enp0s8 allow-hotplug enp0s8
iface enp0s8 inet static
address 192.168.56.11
netmask 255.255.255.0

설정 -> 네트워크 설정 에서 어댑터를 선택하고 IPv4 에서 manually 로 수동 ip를 준다.

보통 윈도우 호스트 머신은 192.168.56.1 네트워크를 사용한다.

설정후 호스트 머신에서 가상머신의 ip 주소를 ping 해본다

1
2
3
4
5
6
. . . . . :
PS C:\Users\daddy\Downloads> ping 192.168.56.10

Pinging 192.168.56.10 with 32 bytes of data:
Reply from 192.168.56.10: bytes=32 time<1ms TTL=64
Reply from 192.168.56.10: bytes=32 time<1ms TTL=64

칼리 리눅스의 보안 프로그램

칼리 리눅스는 기본적으로 보안 패키지를 포함하고 있다. 메뉴에서 확인 가능하다.

첫번째 메뉴 - 정보 수집 관련 프로그램들

두번째 메뉴 - 취약점 분석과 관련된 프로그램들

세번째 메뉴 - 웹과 관련된 프로그램들

이 과정은 버프 스위트(burpsuite) 를 주로 사용한다.

샘플 코드 다운로드

저자가 작성한 POC(Proof of Concept) 코드

POC 코드란 어떤 공격이 가능하다는 것을 보여주는 간단한 예제 코드이다.

칼리리눅스에서 github.com/bjpublic/whitehacker 에서 다운로드한다.

압축을 해제하

웹 모의해킹 실습용 가상머신 bee-box

모의 해킹을 위한 가상머신

github.com/bjpublic/whitehacker 에서 ova 를 다운로드한다.

요소 설명
DWA 웹 모의해킹이 가능하도록 보안 취약점을 만들어 둔 웹 애플리케이션, 소스코드 레벨에서 취약한 코드와 공격 대응을 위한 코드를 쉽게 확인할 수 있어서 시큐어 코딩을 학습하기 좋다
bWAP 비박스에서 기본으로 제공하는 웹 애플리케이션이다. DVWA 처럼 웹 모의해킹을 실습할 수 있다. DWA 보다 다양한 공격을 할 수 있다.
JBoss 4.2.3GA 잡바 웹 애플리케이셔 개발, 4.2.3 Ga 버전은 자바 역직렬화 취약점이 있어서 실습할 수 있다.

실습용 가상머신은 메로리가 1024MB 로 되어 있다.

오리지널

bee-box는 웹 취약점을 공격할 수 있는 오픈소스 웹 애플리케이션인 bWApp가 설치되어 있으며 웹 취약점 공격을 공부할 수 있도록 만들어진 가상환경입니다.

보통 가상머신 설치와 같이 두가지 방법으로 설치할 수 있습니다-!!

① bWAPP을 해당 호스트에 설치하는 방법

② 비박스를 가상환경에 설치하여 미리 설치된 bWAPP를 사용하는 방법

참고: https://power-girl0-0.tistory.com/13

저는두번째 방법을 바탕으로 다운로드를 해보았습니다-!!

다같이 설치해볼까용~~??

① 비박스 공식 홈페이지에 접속합니다.

http://sourceforge.net/projects/bwapp/files/bee-box/

아이디 : bee / 비밀번호 : bug