728x90
반응형

WebGoat란

OWASP에서 제공되는 웹 보안 취약성을 내포한 웹 어플리케이션이다. XSS, Injection, Backdoor 등 각 웹 보안 취약성을 이해하고 공격 방법을 이해할 수 있도록 만들어져 있으며, 각 단계별로 풀어나가면서 웹 취약성에 대해 이해하고 대응할 수 있도록 도움을 준다.

 

설치순서

1. CentOS 시스템 업데이트

$ sudo yum install epel-release

$ sudo yum update -y && sudo reboot

 

2. WebGoat 다운

wget https://github.com/WebGoat/WebGoat/releases/download/7.1/webgoat-container-7.1-exec.jar 

 

Build software better, together

GitHub is where people build software. More than 40 million people use GitHub to discover, fork, and contribute to over 100 million projects.

github.com

3. Java 설치

yum install java-1.8.0-openjdk-devel.x86_64

Java 설치 확인

4. Tomcat 설치

- Apache Tomcat을 위한 사용자 생성

보안상의 이유로 tomcat을 위한 non-root 사용자와 그룹을 생성해서 사용

$ sudo groupadd tomcat

$ sudo useradd -s /bin/nologin -g tomcat -d /opt/tomcat tomcat

해당 방법으로 ‘tomcat’그룹에 속한 ‘tomcat’사용자를 작성합니다. 해당 사용자로는 시스템에 로그인 할 수 없습니다. 홈 디렉토리는 /opt/tomcat이며 Apache Tomcat 프로그램이 위치하게 될 디렉토리입니다.

 

-Apache Tomcat 다운로드 및 설치

$ cd ~

$ wget http://mirror.navercorp.com/apache/tomcat/tomcat-8/v8.5.46/bin/apache-tomcat-8.5.46.tar.gz

$ sudo tar -zxvf apache-tomcat-8.5.46.tar.gz -C /opt/tomcat --strip-components=1

 

- 권한 설정하기

Apache Tomcat을 구동하기 전 알맞은 권한 설정이 필요합니다.

 

$ cd /opt/tomcat

$ sudo chgrp -R tomcat conf

$ sudo chmod g+rwx conf

$ sudo chmod g+r conf/*

$ sudo chown -R tomcat logs/ temp/ webapps/ work/

$ sudo chgrp -R tomcat bin/ lib/

$ sudo chmod g+rwx bin

$ sudo chmod g+r bin/*

 

- Apache Tomcat을 위한 Systemd 파일 설정

시스템에 등록하여 톰캣을 시작프로그램에 등록하고 명령어로 시작/정지/재시작을 할 수 있도록 설정합니다.

$ sudo vi /etc/systemd/system/tomcat.service

 

아래의 내용을 tomcat.service에 입력 후 저장합니다.
Xms Xmx같은 옵션들은 서버에 맞게 수정하여줍니다.

 

[Unit]

Description=Apache Tomcat Web Application Container

After=syslog.target network.target

[Service]

Type=forking

Environment=JAVA_HOME=/usr/lib/jvm/jre

Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid

Environment=CATALINA_HOME=/opt/tomcat

Environment=CATALINA_BASE=/opt/tomcat

Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC'

Environment='JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom'

ExecStart=/opt/tomcat/bin/startup.sh

ExecStop=/bin/kill -15 $MAINPID

User=tomcat

Group=tomcat

[Install]

WantedBy=multi-user.target

 

:wq를 입력하여 저장 후 종료합니다.

 

- Apache Tomcat 실행 및 테스트

Apache Tomcat을 실행한 뒤 시작 프로그램에 등록합니다

$ sudo systemctl start tomcat.service

$ sudo systemctl enable tomcat.service

 

firewall-cmd를 이용하여 8080포트를 열어 서버에 접근할 수 있도록 합니다.

 

$ sudo firewall-cmd --zone=public --permanent --add-port=8080/tcp

$ sudo firewall-cmd --reload

 

서버의 IP 8080포트로 접속하면 Tomcat Welcome 페이지를 확인할 수 있습니다.

로컬에서 테스트중인 경우 localhost로 접속이 가능합니다.

http://[your-Vultr-server-IP]:8080

 

5. WebGoat 실행

systemctl stop tomcat

systemctl status tomcat

java -jar webgoat-container-7.1-exec.jar

http://localhost:8080

728x90
반응형

+ Recent posts