본문 바로가기
Penetration Practice/네트워크

하트블리드(heartbleed) 취약점 실습

by 6unoh 2015. 9. 23.

HeartBleed

하트 블리드 버그 취약점에 대한 설명은 아래 블로로그에 있기때문에 생략하고 실습하도록 하겠습니다.

http://chogar.blog.me/80210839010 


==============================================================

서버 : CentOS

공격자 : Kali

================================================================

먼저 centos에 제로보드를 설치하기 위해서 yum을 통해서 http, mysql-server, mysql, php, php-mysql, php-gd, gd, gd-devel를 설치해야 합니다.

그 후 데몬을 재시작합니다.


http://www.xpressengine.com/ 이곳에서 제로보드를 다운받습니다.

경로는 /var/www/html/안에 xe폴더를 넣고 권한을 777로 바꿉니다.

데이터베이스 관리자를 생성해야 합니다.

mysqladmin -u root -p password [패스워드] -> 이것은 관리자 ID와 패스워드를 설정하는 명령어 입니다.


※error 2002 해결방법

1. my.cnf 설정 파일에서 mysqld, client 항목의 socket속성을 /var/lib/mysql/mysql.sock으로 수정합니다.

2. /var/lib/mysql/mysql.sock파일에

ln -s /tmp/mysql.scok /var/lib/mysql.sock

을 저장합니다.


※mysql 비밀번호를 잊은 경우

1. 윈도우

cmd창에서 mysql프로세스를 끄고 mysql이 설치된 폴더에서 mysqld --skip-grant-tables 입력 후 다른 cmd창을  mysql -u root -p 로 들어가게 되면 패스워드를입력하라고 묻지만 엔터를 치면됩니다. 그 후 패스워드를 변경하면 됩니다.


2. 리눅스

mysql프로세스를 끄로 mysqld_safe --skip-grant를 입력하고 mysql을 실행해서 패스워드를 바꾸면 됩니다.

그 후 웹 브라우저로 자신의 ip/xe 폴더로 접근하여 제로보드를 설치합니다.

여기서 mysql로 지정합니다.

자신이 만든 데이터베이스와 일치하게 정보를 입력해야합니다.


ssl 모듈을 추가해야합니다.

a2enmod ssl

그리고 ssl 인증서를 발급합니다.

그 후 관리자 id로 접속해 봅니다.

a2ensite default-ssl

service httpd restart

http://exploit-db.com 이곳에서 32764.py 파일을 공격자가 다운받습니다.

공격자가 python 32745.py [공격대상 ip] > 이름.txt 로 공격을 하고 이름.txt로 저장을 하면 됩니다.

저장한 파일을 vi로 확인하면 id와 password등 정보가 나오게 됩니다.

안나오는 경우가 있기 때문에 나올 때까지 하면됩니다.

이 공격은 로그에 남지 않습니다.

wireshark로 하트블리드 패킷 확인


'Penetration Practice > 네트워크' 카테고리의 다른 글

무선네트워크 및 WEP암호화  (0) 2019.08.14
무선 랜 해킹  (0) 2019.08.14
SSL MITM  (0) 2015.09.22
DNS Spoofing  (0) 2015.09.21
IP Spoofig  (0) 2015.09.17

댓글