HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > БЕЗОПАСНОСТЬ И УЯЗВИМОСТИ > Уязвимости > Веб-уязвимости
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 08.05.2024, 00:28
Местный
Новичок
Регистрация: 07.07.2023
Сообщений: 0
Провел на форуме:
0

Репутация: 0
По умолчанию

Приветствую! Раз объявили конкурс статей, то почему бы не поучаствовать.
Специально для античат
Автор: KnightPentest

GPT 4.0
Это очень полезная нейронка для пентестера. В этой статье я продемонстрирую, как ее можно использовать на периметре.



Анализируем исходники CMS
Наверное каждый из нас хоть раз пробовал взломать форум(во время ctf) на каком-нибудь популярном CMS(wordpress, joomla, etc.). Если нам доступны исходники форума/плагина/темы для форума, то мы можем их проанализировать и найти новую багу. Особенно, если движок непопулярный или плагин для форума, то вероятность крайне высокая, как минимум мы будем понимать есть ли смысл вообще пытаться подобрать уникальный ID или что-то в этом роде, иначе можно потерять кучу времени и уйти ни с чем. На самом деле я бы порекомендовал в первую очередь изучить движок форума vbulletion это максимально дырявый форум с огромной историей, есть кучу багов, которые находили комьюнити форума ачата. Даже максимально странные баги, когда пользователь мог зарегистрироваться от имени администратора, введя вместо буквы "a" условно Ⱥ из греческого алфавита/латинского(если я не ошибаюсь, т.к я помню, что удавалось зарегистрироваться под именем админа, но администрироваться нельзя было). Теперь перейдем к делу.
У меня для проведения пентеста есть форум на движке IP BOARD. Первое что я сделаю - это зарегистрируюсь...



Приходит подтверждение почты



Меня в первую очередь заинтересовала эта активация из-за текста в сообщении:

Цитата:

Подтверждение регистрации производится один раз и необходимо для повышения безопасности форума и защиты его от злоумышленников.

Так и намекает, чтобы мы проверили насколько это безопасно. В целом не очень хорошо, что ID пользователя всем подряд отображается, злоумышленники понимают уже, что более 30 тысяч юзеров есть в бд, т.к после каждой регистрации uid увеличивается на 1. Если юзеров много, то злоумышленник будет готов потратить больше времени на получения конфиденциальных данных (емейлов, паролей, документов). Первое, что сделал - это начал гуглить ip board скачать русификатор.



После того, как были найдены исходники мне нужно было понять из чего формируется aid (секретный ключ, который необходим для подтверждения почты или сброса пароля). Если бы мы смогли его генерировать или подбирать, то смогли бы и захватить учетную запись администратора. В исходниках 100% есть строки в которых есть "aid" вот их и нужно найти. Воспользуемся утилитой grep.

Bash:


Код:
grep
-rl
"\baid\b"
//media/sf_Telegram_Desktop/IP.Board.v3.4.5_Nulled_Rus
Получаем output в каких файлах есть "aid"

Bash:


Код:
output
//media/sf_Telegram_Desktop/IP.Board.v3.4.5_Nulled_Rus/upload/admin/api/forums/api_topic_view.php
//media/sf_Telegram_Desktop/IP.Board.v3.4.5_Nulled_Rus/upload/admin/applications/core/extensions/usercpForms.php
//media/sf_Telegram_Desktop/IP.Board.v3.4.5_Nulled_Rus/upload/admin/applications/core/modules_public/global/lostpass.php
//media/sf_Telegram_Desktop/IP.Board.v3.4.5_Nulled_Rus/upload/admin/applications/core/modules_public/global/register.php
//media/sf_Telegram_Desktop/IP.Board.v3.4.5_Nulled_Rus/upload/admin/applications/core/xml/core_mobile_templates.xml
//media/sf_Telegram_Desktop/IP.Board.v3.4.5_Nulled_Rus/upload/admin/applications/core/xml/core_root_templates.xml
//media/sf_Telegram_Desktop/IP.Board.v3.4.5_Nulled_Rus/upload/admin/applications/core/xml/core_xmlskin_templates.xml
//media/sf_Telegram_Desktop/IP.Board.v3.4.5_Nulled_Rus/upload/admin/applications/forums/modules_public/extras/stats.php
//media/sf_Telegram_Desktop/IP.Board.v3.4.5_Nulled_Rus/upload/admin/applications/forums/xml/forums_mobile_templates.xml
//media/sf_Telegram_Desktop/IP.Board.v3.4.5_Nulled_Rus/upload/admin/applications/forums/xml/forums_root_templates.xml
//media/sf_Telegram_Desktop/IP.Board.v3.4.5_Nulled_Rus/upload/admin/applications/forums/xml/forums_xmlskin_templates.xml
//media/sf_Telegram_Desktop/IP.Board.v3.4.5_Nulled_Rus/upload/admin/applications/members/sources/adminManage.php
//media/sf_Telegram_Desktop/IP.Board.v3.4.5_Nulled_Rus/upload/admin/setup/sources/base/setup.php
//media/sf_Telegram_Desktop/IP.Board.v3.4.5_Nulled_Rus/upload/ips_kernel/facebook-client/facebookapi_php5_restlib.php
//media/sf_Telegram_Desktop/IP.Board.v3.4.5_Nulled_Rus/upload/ips_kernel/sabre/Sabre/DAV/Directory.php
//media/sf_Telegram_Desktop/IP.Board.v3.4.5_Nulled_Rus/upload/ips_kernel/sabre/Sabre/DAV/File.php
//media/sf_Telegram_Desktop/IP.Board.v3.4.5_Nulled_Rus/upload/ips_kernel/sabre/Sabre/DAV/Node.php
На глаз уже видно, что исходники скорее всего лежат в /upload/admin/applications/core/modules_public/global/register.php или /upload/admin/applications/members/sources/adminManage.php но т.к мы не владеем php передадим все это дело в консольного GPT. Пусть он проанализирует и скажет как формирутеся aid.



Далее он ищет уже в файлах конкретно строки в которых есть "aid"



И он приходит к выводу, что aid создается через файл register.php и скидывает кусок исходного кода



aid - это всего-лишь url параметр, который состоит из $validate_key. Теперь просим его узнать как создается validate_key



PHP:


Код:
$validate_key
=
md5
(
IPSMember
:
:
makePassword
(
)
.
time
(
)
)
;
Теперь мы знаем из чего состоит validate_key то есть aid. Из функции makePassword() и time().
time — Возвращает текущую метку системного времени Unix, 10 символов. 10 лярдов комбинаций, чтобы подобрать это число... Уже можно понять, что aid бессмысленно брутфорсить. Чтобы узнать подробнее про функцию makePassword() отправимся в github
ipb.php тут исходный код функции.

PHP:


Код:
<?php

$key = md5( IPSMember::makePassword() . uniqid( mt_rand(), TRUE ) );

public static function makePassword() {
        $pass = "";
       
        $unique_id      = uniqid( mt_rand(), TRUE );
        $prefix         = IPSMember::generatePasswordSalt();
        $unique_id .= md5( $prefix );

        usleep( mt_rand(15000,1000000) );
       
        $new_uniqueid = uniqid( mt_rand(), TRUE );

        $final_rand = md5( $unique_id . $new_uniqueid );

        for ($i = 0; $i < 15; $i++) {
                $pass .= $final_rand{ mt_rand(0, 31) };
        }
        return $pass;
}
Делаем вывод, что секретный ключ не сбрутить. А GPT нам ускорил процесс поиска нужных функций в коде php.
Поиск POC/CVE через GPT



Если вам нужен более точный ответ, то лучше задавайте вопрос на английском.



Дальше можно легко перевести на русский язык. Чувствуете разницу?



На ютубе есть обзор

Я повторил и получилось найти скулю, получить название бд



Все версии <= 3.4.7 оказались уязвимыми.



Сохраняйте журналы/статьи делайте из них конспекты





Создавайте схемы с помощью GPT









Вывод
Это лишь некоторые примеры, которые должны вам помочь. Надеюсь вы что-то подчеркнули для себя
 
Ответить с цитированием

  #2  
Старый 31.05.2024, 15:09
teteshka
Новичок
Регистрация: 08.04.2020
Сообщений: 0
Провел на форуме:
0

Репутация: 0
По умолчанию

Неплохой материал. Какую оболочку использовал для общения с GPT 4.0? Я так понимаю это по api от openai?
 
Ответить с цитированием

  #3  
Старый 31.05.2024, 15:51
Местный
Новичок
Регистрация: 07.07.2023
Сообщений: 0
Провел на форуме:
0

Репутация: 0
По умолчанию

Цитата:

teteshka сказал(а):

Неплохой материал. Какую оболочку использовал для общения с GPT 4.0? Я так понимаю это по api от openai?

API KEY OPENAI, openinterpreter
 
Ответить с цитированием

  #4  
Старый 31.05.2024, 15:54
Местный
Новичок
Регистрация: 07.07.2023
Сообщений: 0
Провел на форуме:
0

Репутация: 0
По умолчанию

Кстати, в дополнение GPT 4.0 в связке с openinterpreter может помочь найти copyright, где он формируется и удалить его будет гораздо проще.
 
Ответить с цитированием

  #5  
Старый 29.06.2024, 00:14
x0001
Новичок
Регистрация: 17.03.2024
Сообщений: 0
Провел на форуме:
0

Репутация: 0
По умолчанию

Интересная статья
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.