word.st.kr, dvwa.st.kr 웹페이지가 db때문에 오류났는데, 이건 전 시간 하드디스크 다는 과정에서 db가 없어졌기 때문이다.
mysql 들어가서 word랑 dvwa DB 생성해주면 된다.
CREATE DATABASE word;
CREATE USER 'word'@'localhost' IDENTIFIED BY '123456';
GRANT ALL PRIVILEGES ON word.* TO 'word'@'localhost';
FLUSH PRIVILEGES;
CREATE DATABASE dvwa;
CREATE USER 'dvwa'@'localhost' IDENTIFIED BY '123456';
GRANT ALL PRIVILEGES ON dvwa.* TO 'dvwa'@'localhost';
FLUSH PRIVILEGES;
1. php 계정 생성 후 웹 접속하기 (php.st.kr)
adduser php
chmod 711 $HOME
chmod 755 ~/public_html
> nano /etc/apache2/sites-available/hosting.conf
<VirtualHost *:80>
DocumentRoot /home/php/public_html
ServerName php.st.kr
ServerAdmin php@php.st.kr
ErrorLog /home/php/public_html/logs/error.log
CustomLog /home/php/public_html/logs/access.log combined
</VirtualHost>
2. php.st.kr editplus로 접속
> nano /etc/vsftpd.chroot_list
계정 추가
방화벽 열어주기.
3. 해커에서 공격
wpscan --url word.st.kr -U user.txt -P passwd.txt
공격을 하기 위해 먼저 업데이트를 해주어야 한다.
NAT로 외부 연결 후
wpscan --utl aps.or.kr을 입력하여 업데이트를 시켜준다.
이후 다시 word.st.kr을 공격해서 아이디와 패스워드를 찾는다.
word.st.kr의 로그인 페이지(word.st.kr/wp-login.php)로 접속 후 찾은 아이디와 패스워드로 로그인한다.
DB 백업
word > mysqldump -u word -p word > word.sql
/home/word/backup.sh에 적용
word > nano backup.sh
#!/bin/sh
set $(date)
fname="backup-word-$1$2$3tar.gz"
mtime=$(date "+%Y-%m-%d_%T")
mysqldump -u word -p123456 word > word_$mtime.sql
tar cvzf /backup/$fname /home/dvwa/public_html
> chmod 777 backup.sh
---
백업받은 파일로 복원 작업 진행 > 서버로부터 파일 받기 > Samba 이용
Samba 설정
> groupadd sambaGroup
> chgrp sambaGroup /backup
> chmod 770 /backup
> usermod -G sambaGroup word
> smbpasswd -a word
123456
> nano /etc/samba/smb.conf
29행 : workgroup = WORKGROUP 밑에 추가
unix charset = UTF-8
map to guest = Bad User
제일 밑에 추가
[Backup]
path = /backup
read only = yes
guest ok = no
create mode = 0777
directory mode = 0777
valid users = @sambaGroup
내용 오류 체크
> testparm
enter
> systemctl restart smb
> systemctl enable smb
> ufw allow Samba
Win7 파일 탐색기 > 컴퓨터 (내 pc) > 상단 메뉴 - 네트워크 드라이브 연결 >
> 네트워크 자격 증명 입력 - word, 123456
정상적으로 연결 된다.
php.st.kr 웹 작업
w3school에서 header.php 코드 가져오는데, 복사 붙여넣기가 안된다.
그러므로 win7에 공유폴더로 붙여서 가져온다.
장치 > 공유폴더 > 공유폴더 설정 > 추가 > D:\share , 자동 마운트, 항상 사용 체크 > 확인
만약 안붙으면 장치 > 게스트 확장 cd 이미지 삽입
win 7 파일 탐색기 > 컴퓨터 (내 pc) > 이동식 미디어 장치 - CD 드라이브 클릭 후 설치 > 재부팅
하면 정상적으로 붙는 것을 확인할 수 있다.
---
/public_html/monitor.php에 /includes/remotedb.php를 연결시킨다.
[remotedb.php]
<?php
servername="10.0.2.3";
$username="rsyslog";
$password="123456";
$dbname="Syslog";
$conn=mysqli_connect($servername, $username, $password, $dbname);
if (!$conn) {
echo "연결 실패";
} else {
echo "연결 성공";
}
?>
웹에서 들어가보면 db 접근이 안된다는 에러가 뜬다.
이걸 풀어주기 위해 로그서버의 mysql로 들어가 rsyslog를 %로 접근을 풀어준다.
CREATE USER rsyslog@'%' IDENTIFIED BY '123456';
GRANT ALL PRIVILEGES ON Syslog.* TO rsyslog@'%';
FLUSH PRIVILEGES;
이 후 웹에서 새로고침을 하면 정상적으로 연결 성공이 출력 된 것을 확인할 수 있다.
[monitor.php]
[monitor.php]