본문 바로가기
☠️ 보안

SSL 취약점을 이용한 공격, Heart bleeds(하트블리드) 실습과 웹 세션 하이재킹 (2)

by 비타민찌 2021. 7. 22.
728x90

SSL 취약점을 이용한 공격,

 Heart bleeds(하트블리드) 실습과 웹 세션 하이재킹

 

 

[ 이전 글 ]과 이어지는 웹 세션 하이재킹 Heart bleed 실습 입니다.

 

 

1. 제로보드 설치 (간단한 웹사이트 생성)

우선 제로보드를 설치하기 위해,

php php-devel php-pear php-mysql php-mbstring php-gd php-imap php-odbc php-xmlrpc php-xml을 설치한다.

yum install php php-devel php-pear php-mysql php-mbstring php-gd
php-imap php-odbc php-xmlrpc php-xml


Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
* base: centos.tt.co.kr
* extras: centos.tt.co.kr
* updates: centos.tt.co.kr
[ 생략 ]

 

제로보드를 설치하기 위해 mysql-server를 설치한다.

yum install mysql-server

 

 

설치된 mysql에 접속해서 xe DB를 생성한다.

mysql -u root -p

// mysql 접속 후, 기본 설정.
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.1.73 Source distribution

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
Other names may be trademarks of their respective owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

 

xe DB 생성

mysql> create database xe;
Query OK, 1 row affected (0.00 sec)

mysql> show databases; +-----------------------+
| Database | +-----------------------+
| information_schema |
| mysql |
| test |
| xe | +-----------------------+ 4 rows in set (0.00 sec)

 

php 설정파일을 다음과 같이 설정한다.

vi /etc/php.ini

short_open_tag = On
allow_call_time_pass_reference = On
error_reporting = E_ALL & ~E_NOTICE & ~E_DEPRECATED & ~E_USER_DEPRECATED
display_errors = On
display_startup_errors = On
register_globals = On
register_long_arrays = Off
magic_quotes_gpc = On
magic_quotes_runtime = Off
date.timezone = "Asia/Seoul"

 

 

아파치 설정 파일에 굵은 글씨 부분을 추가한다.

vi /etc/httpd/conf/httpd.conf

AddType application/x-httpd-php .php .php3 .php4 .php5 .html .htm .inc
DirectoryIndex index.html index.htm index.php

 

수정한 프로그램 재시작.

service httpd restart

 

제로보드를 다운 받아 압축을 풀고, 디렉토리의 권한을 707로 변경해준다.

chmod 707 /var/www/html/xe

 

 

그리고 웹 브라우저로 접속해 설치를 진행한다.

 

mysql을 체크하고 다음으로 넘어간다.

 

 

 

2. 희생자와 해커가, 웹사이트에 각 계정으로 로그인.

 

 

admin 관리자 계정과, 해커 계정.

 

 

해커쪽에서 edit this cookie 확장 프로그램을 다운 받는다.

그리고 해커 쪽에서 취약한 환경인 웹서버로, 다음과 같이 heart bleed 공격.

 

 

그 내용을 확인해보면

 

 

 

이렇게 관리자 로그인 세션 ID가 보인다.

이것을 이용해 해커가 관리자로 로그인 할 수 있다.

 

 

 

이렇게 된다면.. 해커가 마음대로 사이트의 글을 생성 및 수정 삭제 등이 가능해진다.

 

 

해커의 세션 아이디를 관리자 세션 아이디로 바꾸고 저장하는 중.

 

그리고 사이트 새로고침을 하면,

다음처럼 관리자로 로그인 된다.

 

728x90

댓글