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
'모의해킹 > 웹해킹' 카테고리의 다른 글
[Web Hacking] WebGoat SQL Injection(advanced) 5 문제풀이 (0) | 2020.02.24 |
---|---|
[Web Hacking] WebGoat SQL Injection(advanced) 3 문제풀이 (0) | 2020.02.22 |
[Web Hacking] WebGoat SQL Injection 문제풀이 (0) | 2020.02.21 |
[Web Hacking] OWASP A1 인젝션 종류 (0) | 2020.02.14 |
[Web Hacking] OWASP Top 10 (0) | 2020.02.12 |