DVWA 설치하기(CentOS 7, MySQL)
개발환경 : CentOS7, MySQL
VMware Player에 CentOS 7 설치 후, Oracle과 아파치 톰캣을 설치했으나,
DVMA라는 Damn Vulnerable Web Application 이름부터 어마어마한 프로그램을 설치하여 개발환경을 만들기 위해, Oracle은 eclipse에 구현한 게시판 사이트를 이용하기로 하고, MySQL은 독자적으로 DVMA와 연동해 사용해 보기로 했다.
일단 DVMA란 무엇인가?
DVWA(Damn Vulnerable Web Application)은 취약한 웹 어플리케이션으로 웹 모의해킹을 연습하기 위한 어플리케이션이라고 할 수 있습니다.
모의해킹을 위한 프로그램이다 이말이다.
많은 것을 배우기 위해 우선 잘 설치해서 환경을 만들어볼까 한다.
어렵지 않다.
다만 설치하기 전에 최소 2-3개의 블로그를 비교해가며 설치과정을 대략적으로 이해해보고 뭐든 설치하는게 낫다. 이미 다들 알겠지만..
우선 MySQL 다운로드
$ wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
MySQL 압축풀기
$ sudo rpm -ivh mysql57-community-release-el7-11.noarch.rpm
MySQL 설치
$ sudo yum install mysql-server
MySQL 시작
$ sudo systemctl start mysqld
부팅시 MySQL 자동으로 시작되도록 등록
$ sudo systemctl enable mysqld
MySQL 상태 보기
$ sudo systemctl status mysqld
보안설정
$ sudo mysql_secure_installation
먼저 mysql의 root 계정 비번을 넣으라고 합니다. 처음 설치한 mysql의 root 계정 비번은 없습니다. 그냥 엔터를 칩니다.
Enter current password for root (enter for none):
mysql의 root 계정 비번을 설정할 것인지 묻습니다. 당연히 설정 해야죠.
그럼 새로 설정할 비번을 두 번 써줍니다.
Set root password? [Y/n] y
New password:
Re-enter new password:
다음은 anonymous 계정을 제거할 건지 묻습니다. 인증된 계정만 접속되어야 합니다.
Remove anonymous users? [Y/n] y
원격으로 root 계정 로그인을 허용할 것인지 묻습니다.
이건 판단에 따라 다르며 저는 원격으로 root 계정 로그인을 할 겁니다.
Disallow root login remotely? [Y/n] n
테스트 데이터베이스를 지우고 접속도 못하게 합니다.
Remove test database and access to it? [Y/n] y
설정한 걸 적용할 것인지 묻습니다. 적용 합니다.
Reload privilege tables now? [Y/n] y
$ sudo systemctl restart mysqld
이제 이렇게 하면 접속됨
$ mysql -u root –p
비밀번호 치라 하면 치면 된다.
유저 아이디를 하나 만들자, DVMA랑 연동할 놈으로
mysql> CREATE USER 'userID'@'%' IDENTIFIED BY 'password';
이렇게 ID 넣고 PW도 넣는다. (원하는 아이디 비번 넣기)
%는 어디서든 접근 가능하게 하는거고
mysql> CREATE USER 'userID'@'127.0.0.1' IDENTIFIED BY 'password';
이렇게 하면 127.0.0.1 에서만 접속 허용한다.
firewall-cmd --zone=public --add-port=80/tcp --permanent firewall-cmd --reload
CentOS 7 은 Firewall을 사용하기 때문에 방화벽을 해제해주자(iptables아님)
DVWA를 다운받는다.
wget https://github.com/ethicalhack3r/DVWA/archive/master.zip
파일을 unzip한다.
unzip master.zip
압축을 풀면 DVMA-master라는 파일이 생성된다. 이 파일을 재배치 해주자
그 다음 /var/www/html 여기로 폴더를 옮길 것이다. 이 안으로 옮기면 나중에 URL들어갈 때 주소가 되니까 어쨌든 그렇게 한다.
mv DVWA-master/* /var/www/html/
mv DVWA-master/.gitignore /var/www/html/
mv DVWA-master/.htaccess /var/www/html/
그다음 권한을 준다 (이건 아직 왜 하는지 모르겠다)
Chmod –R 777 html 혹은 따로 DVMA 파일 있으면 dvma에 권한을 준다 ls치면 글자에 배경색 생기도록
cp /var/www/html/config/config.inc.php.dist /var/www/html/config/config.inc.php
그리고 config 파일 찾아서 그 안에잇는 congif.inc.php.dist를 이름을 바꿔 복사해서 dist 빼고 config.inc.php로 하나 새로 만들어준다.
그리고 그 config.inc.php를 열어보면 다음과 같이 ID PW있는 부분이 있다 찾아서 설정해주자.
그리고 터미널에 hostname –I를 치고 IP 주소를 알아낸 뒤, 브라우저를 열어 http://IP.주.우.소 를 치면 DVMA 페이지가 나온다.
오류 : 내 경우 바로 페이지가 나오지 않았는데 Apache를 제대로 설치하지 못한 까닭인듯.
내 경우엔
yum -y install httpd
systemctl enable httpd
systemctl start httpd
systemctl status httpd -l
확인해주고 active 확인 후 다시 실행하니 문제가 해결되었다.
중간에 빨간색은 구글링 해서 해결해주고 맨 아래에 있는 Create DataBase를 눌러주면 시작 됨
아이디는 admin 비번은 password를 입력하고 시작한다. 끝