๐Web
Web Server vs WAS(Web Application Server)
Web Server vs WAS(Web Application Server)
2023.09.291. Web Server ? Web Server๋ ๋จ์ํ ์ ์ ์ธ ํ์ด์ง๋ฅผ ์๋น์คํ๊ธฐ ์ํ ์๋ฒ์ด๋ค. ์ด๋ฏธ์ง ํ์ผ, ๋จ์ HTML ํ์ผ ๊ฐ์ ์ ์ ์ธ ํ์ผ๋ค์ Web Server๋ฅผ ํตํด์ ์์ฒญ์ ์ฒ๋ฆฌํ๋ค. ์) Apache Server, Nginx, IIS ๋ฑ 2. WAS(Web Application Server)? ๋์ ์ธ ํ์ด์ง๋ฅผ ์ ๊ณตํ๊ธฐ ์ํด DB ์กฐํ๋ ์๋น์ค๋ฅผ ์ํ ๋ก์ง์ ์ํํ๋ ์๋ฒ์ด๋ค. ์๋์ ์ผ๋ก ๋ถํ๊ฐ ๋ง์ ์์
๋ค์ด ์งํ๋๋ค. ์) Tomcat, JBoss, Jeus ๋ฑ 3. Web Server์ WAS๋ฅผ ๋ฐ๋ก ์ฐ๋ ์ด์ ์๋ฒ ๋ถํ ๋ฐฉ์ง ์ ์ ์ธ ํ์ด์ง์ ์์ฒญ์ Web Server์์ ์ฒ๋ฆฌํ๋๋ก ํ์ฌ WAS์ ๋ถํ๋ฅผ ๋ฐฉ์งํ๋ค. ๋ฌผ๋ฆฌ์ ์ผ๋ก ๋ถ๋ฆฌํ์ฌ ๋ณด์ ๊ฐํ SSL์ ๋ํ ์๋ณตํธํ ์ฒ๋ฆฌ์ Web ..
Broken API Authorization
Broken API Authorization
2023.08.13Broken API Authorization (https://medium.com/bugbountywriteup/bug-bounty-broken-api-authorization-d30c940ccb42)[https://medium.com/bugbountywriteup/bug-bounty-broken-api-authorization-d30c940ccb42] ํด๋น๊ธ์ ์ดํดํ๊ธฐ ์ํ ๋ชฉ์ ์ผ๋ก ์์ฑ๋ ๊ธ์
๋๋ค. "Authenticate"๋ผ๋ ๋ฒํผ์ด ์กด์ฌํ๊ณ ํด๋ฆญํ๋ฉด ๋ก๊ทธ์ธ ํ์ด์ง๋ก ์ด๋ํ๋ค. ๊ทธ๋ฆฌ๊ณ ๋ก๊ทธ์ธ์ ์๋ํ๋ "Account not authorized" ๋ผ๋ ๋ฉ์์ง๊ฐ ๋์๋ค. ๊ทธ๋ฆฌ๊ณ ๋ค์๊ณผ ๊ฐ์ endnpoint๋ค์ด ์กด์ฌํ๋ค. /poweruser/add /poweruser/delete /user/delete..
AeroCTF - Localization is hard
AeroCTF - Localization is hard
2023.08.13[Localization is Hard] We made a little cafe for all the ctfers to relax after the competition. The website is available in russian and english. Try to find the flag somewhere in / ํ์ด์ง์ ์ ์ํ์ฌ ๊ธฐ๋ฅ์ ์ดํด๋ณด๋ฉด ๋ณ๋ค๋ฅธ ๊ธฐ๋ฅ์ ์๊ณ ์์ด, ๋ฌ์์์ด๋ก ๋ณ๊ฒฝํด์ฃผ๋ ๊ธฐ๋ฅ์ด์๋ค. ํด๋น ๊ธฐ๋ฅ์ ์ฟ ํค ๊ฐ์ lang=en ๋๋ ru ๋ก ์ค์ ๋์ด ์ฒ๋ฆฌ๋๋ค. GET / HTTP/1.1 Host: 151.236.114.211:7878 Cache-Control: max-age=0 Upgrade-Insecure-Requests: 1 DNT: 1 User-Agent: Mozilla/5..
RCE via Server-Side Template Injection
RCE via Server-Side Template Injection
2023.08.13RCE via Server-Side Template Injection | by Gaurav Mishra | Medium SSTI ์ทจ์ฝ์ ์ ์ด์ฉํ์ฌ Remote Code Execution์ํ๊ณ Akamai WAF์ ์ฐํํ๋ ๋ฐฉ๋ฒ์ ์๊ฐํ๋ ๊ธ์ด๋ค. ์ฌ์ฉ์๊ฐ ์
๋ ฅํ ๋ฐ์ดํฐ๋ฅผ Response์ ๋ฌธ์์ด๋ก ์๋ตํ๋ ๊ธฐ๋ฅ์ ๋ฐ๊ฒฌํ์๋ค. ํด๋น ๊ธฐ๋ฅ์ XSS ํ์ด๋ก๋๋ฅผ ๋ช๊ฐ ์
๋ ฅํ์์ง๋ง Javascript๊ฐ ์คํ๋์ง ์์๋ค. ํ์ง๋ง context_type Parameter์ ${191 * 7} SSTI ํ์ด๋ก๋๋ฅผ ์
๋ ฅํ์ ์๋ ๊ทธ๋ฆผ์ฒ๋ผ ์ฑ๊ณต์ ์ผ๋ก ๊ณ์ฐ์ด๋์ด ์ถ๋ ฅ๋์๋ค. ์ดํ ์ด๋ค Template Engine์ด ์ฌ์ฉ๋๋์ง ํ์ธํ๊ธฐ ์ํด Error Message๋ฅผ ์ถ๋ ฅ์์ผ๋ณผ๋ ค๊ณ ํ์ง๋ง ์คํจํ๋ค. ํด๋น ์ทจ์ฝ์ ์ ์ด์ฉํ ๊ณต๊ฒฉ..
[KVE-2020-1616] ๊ทธ๋๋ณด๋ ๋ฉ์ธํ๋ฉด XSS ์ทจ์ฝ์
[KVE-2020-1616] ๊ทธ๋๋ณด๋ ๋ฉ์ธํ๋ฉด XSS ์ทจ์ฝ์
2023.08.13Gnuboard 5.4.5.1 ๋ฒ์ ๋ฉ์ธํ๋ฉด XSS ์ทจ์ฝ์ [KVE-2020-1616] 1. ์์ ๋ ์ฝ๋ ํ์ธ adm/menu_list_update.php - ๊ธฐ์กด(5.4.5.1 ver) $_POST = array_map_deep('trim', $_POST); $_POST['me_link'][$i] = is_array($_POST['me_link']) ? clean_xss_tags(clean_xss_attributes($_POST['me_link'][$i], 1)) : ''; $code = is_array($_POST['code']) ? strip_tags($_POST['code'][$i]) : ''; $me_name = is_array($_POST['me_name']) ? strip_tags($_POS..
SSTI(Server Side Template Injection)
SSTI(Server Side Template Injection)
2022.01.29* SSTI (Server Side Template Injection) ? SSTI ๋ ์๋ฒ์ธก์์ ์ฌ์ฉ์ค์ธ Template์ ๊ตฌ๋ฌธ์ ์ด์ฉํ์ฌ ๊ณต๊ฒฉ์๊ฐ ์
๋ ฅํ ํ์ด๋ก๋๋ฅผ Template๋ก ์ธ์ํ๊ฒํ์ฌ ์๋ฒ์์ ์คํ๋๋๋ก ํ๋ ๊ณต๊ฒฉ์ด๋ค. ๊ฐ๋จํ๊ฒ Template๊ณผ Template Engine์ด๋ ๋ญ์ธ๊ฐ๋ฅผ ์ ์ํ๊ณ ๊ฐ์๋ฉด Template Engine์ ํ
ํ๋ฆฟ(์ ํด์ง ํ)์ ๋์ ์ธ ๋ณ์๋ฅผ ๊ฒฐํฉํ์ฌ ๋น ๋ฅด๊ณ ๊ฐํธํ๊ฒ ๋ ๋๋งํด์ฃผ๋ ์ํํธ์จ์ด์ด๋ค. HTML๊ณผ ๊ฐ์ ์ ์ ์ธ ๋ฌธ์์ ๋์ ์ธ ๋ณ์๋ฅผ ๊ฒฐํฉํ์ฌ ์ถ๋ ฅํด์ค๋ค. ์ ๋๋ก ์ดํดํ๋ฉด ๋ ๊ฑฐ๊ฐ๋ค. ๊ทธ๋ผ Template์ ์๋ ์์ ์ฝ๋๋ฅผ ๋ณด๋ฉด ์ดํดํ ์ ์์๊ฑฐ๊ฐ๋ค. from flask import Flask, render_template_string app = Flask(__..