안녕하세요!
오늘은 Kali Linux를 사용하여 ID, PW를 무차별 대입해보도록 하겠습니다.
그래서 오늘은 큰 틀로 1) 본인의 Kali Linux에서 실습환경 만들기 2) Xhydra 사용하기 이렇게 다뤄보도록 하겠습니다.
무차별 대입이란?
무차별 대입(Brute Force) 공격은 인증정보를 알아내기 위해 해커들이 무차별적으로 ID, PW를 입력하여 시도하는 방식 입니다. 이는 단순하고, 노동이 많이 필요하며 시행착오가 많습니다. 이 방법은 무식하지만서도 여전히 효과적이고 해커들에게 인기가 많다고합니다. 저 또한 라우터의 ID, PW등의 설정조차 default 설정인 ID: admin, PW: admin을 변경하지 않았었기도 합니다. (이젠 바꾸려구요..^^)
이를 방어하기 위해 저희가 IT감사를 수행할때도, ID나 PW 중 하나만 틀리더라도 'ID가 틀렸습니다.' 'PW가 틀렸습니다' '없는 사용자입니다.' 등의 정보에대한 힌트도 주지 않게끔 되어있는지 확인하고, 패스워드의 복잡도, 최소자리수, 로그인 시도 차단횟수 등을 확인하는 이유도 이러한 공격을 막기 위해서이죠!
(저번에 SQL Injection 편에서도 패스워드 칸에 ; " , . / ? ! 등의 문자열을 막게 해야하고, ID/PW의 최대길이를 제한해야한다고 설명드렸던 것도, 같은 맥락이겠습니다.)
SQL Injection 이란? : https://goddoeun.tistory.com/51?category=1094288
저희가 저번에 다운받아놓은 Kali Linux로 한번 실습을 해보도록 합시다!
Kali Linux에 ftp 설치하기
1) ftp 설치
Kali Linux에 접속해서 Terminal을 열어준 후, 아래의 내용을 입력하여 ftp를 설치합니다.
#apt-get install ftp
2) vsftp
아래의 내용을 입력하여 vsftp를 설치합니다.
#apt-get install -y vsftpd
3) 아래의 내용을 입력한 후, 설정값을 변경해줍니다.
#nano /etc/vsftpd.conf
아래의 3가지는 원래 앞에 #이 있어, 주석처리로 되어있는데 #을 지워줍니다.
local_enable=YES (로컬 계정 접근 허용)
write_enable=YES (로컬 계정 쓰기 허용)
local_umask=022 (로컬 계정 umask)
설정 변경 후, restart를 해줌으로서 설정을 마무리합니다.
** ftp로 접속이 가능한 계정 목록에서 root를 지워주겠습니다. 왜냐면 저희는 root의 패스워드를 찾을 것이기 때문입니다. >_-
#nano /etc/ftpusers
root 앞에 #을 달아서 주석처리를 해줍니다. 그러면 ftp로 원격접속을 할 경우, root계정으로 로그인 할 수 있게 됩니다.
nmap으로 기초 정보수집하기
일단, 저의 서버의 정보를 알아보기위해 제 Kali Linux의 IP를 알아냅니다.
#hostname -I
그리고 nmap을 해봅니다.
#nmap -F -sS 192.XXX.XX.XXX
nmap 사용법이 뭐였지 ? https://goddoeun.tistory.com/65?category=1094288
nmap을 통해 확인을 해보니 21번 ftp포트가 아주 잘 열려있는 것을 확인이 가능합니다.
무차별 대입 침투테스트시 사용하는 파일
사전 공격(Dictionary Attack)은 무차별 대입공격 기법중 하나압니다.
이는 비밀번호로 자주 쓰이는 문자열들을 대입해서 암호를 찾아내는 방법인데, 구글에 rockyou.txt라고 치면 아래의 git hub에서 다운로드 받을 수 있습니다. 자주쓰이는 패스워드 100만건 이상이 해당 txt파일에 존재합니다.
이를 무차별 대입에 이용할 수 있습니다. (침투테스트 시, rockyou.txt도 많이 사용하지만, 각 화이트 해커분들께서 보유한 패스워드 파일을 이용한다고 합니다.)
하지만 저는, 간단하게 테스트하기 위해 ID.txt PW.txt 파일을 생성하도록 하겠습니다.
(rockyou.txt 에는 100만건 이상의 패스워드가 있어서 오래걸리기 때문입니다..ㅎㅎ)
Desktop에 ID.txt, PW.txt를 생성해보도록 하겠습니다.
제 root의 비밀번호는 kali입니다.
하지만 재미를 위해.. 몇가지를 더 넣어보겠습니다.
#gedit ID.txt -> ID.txt파일 만들기.
그 후, ID에 무차별 대입할 ID 리스트를 작성합니다.
#gedit PW.txt -> PW.txt파일 만들기.
그 후, PW에 무차별 대입할 PW 리스트를 작성합니다.
그리고 나서 Kali에서 Xhydra를 열어줍니다.
Xhydra 사용 방법
검색창에 Xhydra를 검색합니다.
Target에서 Single Target에 IP주소를 입력해주고, nmap에서 확인한 open port인 21번, ftp를 입력해줍니다.
output options 에서 be verbose, show attempts를 눌러줍니다.
출력할때 상세 내용과, 시도횟수를 보여줍니다.
Passwords에 저희가 만든 파일을 사용하기 위해 Username List, Password List를 ID.txt, PW.txt로 맞춰줍니다.
Username을 알고있거나 Password를 알고있다면 Username, Password에 직접 입력하면 됩니다.
그리고 Start를 가서 Start를 눌러주면...
Xhydra가 대신 저의 ftp 서버의 ID, PW를 알아내주었네요...아주 재밌는 실습이었습니다.
다들 요로코롬 한번 재미로 자신의 서버(되도록 로컬말고 가상의..)에다가 해보시길 바랍니다.
(알려드리는 정보를 악의적으로 사용하여 문제가 발생할 경우, 책임을 지는 것은 본인임을 인지해주세요.)
그러면 다음시간에 뵈어요~
※ 주의 : 본 포스팅의 내용을 악용할 시 법적 문제를 야기할 수 있으므로, 반드시 법적 테두리 안에서 허용되는 경우에만 사용하시기 바랍니다.
'공부 > 모의해킹' 카테고리의 다른 글
[공부] 국민 웹 해킹 사이트를 해킹 해버리기 -Lv3- (feat. SQL Injection) (0) | 2022.04.30 |
---|---|
[공부] (모의)해킹 - IP Scan(Shodan), IP 위치추적(Angry IP Scanner), Google을 이용한 해킹 -해킹3편- (0) | 2022.04.25 |
[공부] (모의)해킹 - 정보수집 사회공학, nmap, nikto 사용방법 -해킹2편- (0) | 2022.04.23 |
[공부] (모의)해킹 - VMware를 이용한 Kali Linux 설치 -해킹1편- (0) | 2022.04.23 |
[공부] 국민 웹 해킹 사이트를 해킹 해버리기 -Lv2- (feat. SQL Injection, Blind SQL Injection) (0) | 2022.04.10 |
댓글