네트워크 보안

DataBase 공격

JNU 2022. 11. 9. 12:22
반응형

이번 시간은 지난 시간에 이어서 비밀번호 공격을 이어서 배워보려고 해

centos7에서 mariadb를 이용해 database의 계정을 탈취해보는 공격을 시도해볼 거야

database는 중요한 data 정보들이 모여있기 때문에 보안적으로 취약하면 큰일 나!

따라서 mariadb를 보호할 수 있는 방법도 같이 알아보도록 할게

 

 

 

1. Database 설정

centos에서 사용할 database는 mariadb야

mariadb를 바로 실행시켜보도록 할게

 

- mysql -p mysql

mysql의 database로 접근하기 위한 명령

 

- show databases;

현재 mysql의 database들을 확인하는 명령

 

 

- insert into user (host, user, password) values ('192.168.10.200', 'jnu', password('jjw0728'));

user table에 192.168.10.200만 사용할 수 있는 jnu계정의 id와 password 추가

 

- flush privileges 

table에 위의 명령들을 적용시켜주는 명령어

 

 

- grant all privileges on jnu.*to 'jnu'@'192.168.10.200' identified by 'jjw0728';

192.168.10.200 host에서 접속 가능한 jnu 유저를 추가해주는 권한

 

- select host, user, password from user;

user table에 등록된 계정 정보를 확인한다.

 

 

 

 

이제 kali 리눅스로 넘어와서 hydra에 사용할 사전 파일들을 생성하자

id 사전 파일: username.txt

pw 사전파일: password.txt

내용은 다음과 같아

나중에 좀 더 많은 계정들 중에 한 계정을 찾으려면 더 많은 사전 정보를 갖고 있어야겠지?

 

 

- hydra -L username.txt -P password.txt mysql://192.168.10.100

login 파일은 username.txt, password 파일은 password.txt를 사용하여

192.168.10.100의 mysql을 공격하는 명령이야

다음과 같이 명령을 실행하면 jnu 계정 정보가 scan 되는 것을 볼 수 있어

 

만약 해당 계정이 어떤 사이트의 id와 비밀번호였다면 공격자는 탈취한 정보들을 가지고

언제든 공격할 수 있게 돼

그만큼 database의 내용들을 지키는 것은 굉장히 중요하다고 볼 수 있지

추가적으로 database 접근을 차단하기 위해 mysql에 비밀번호를 설정할 수 있어

 

- update user set password=password ('jjw0728') where usr='root'

root 계정을 가진 자만이 해당 비밀번호를 입력해야 접근할 수 있는 명령이야

- flush privileges; 명령 꼭 실행하는 것 잊지 말기!

 

 

여기까지가 password crack 공격이었어!

hydra로 ssh, ftp, mysql까지 계정들을 crack 해보았는데 어렵지 않게 scan 할 수 있어서 놀랍지?

그만큼 계정관리는 신중하게 잘 다뤄야 돼!

위의 서비스 중에서 하나라도 계정이 탈취되면 시스템 접근은 너무나도 쉽기 때문이야



 

 

네트워크 보안은 오늘 공부로 마지막이야! 앞으로 공부할 시스템 보안과 웹 보안뿐만 아니라

추후에 배울 내용들에 대해서는 새로운 카테고리를 만들어서 올리도록 할게

여기까지 공부하느라 수고했어!!

 

반응형