1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.
Приветствуем вас,Гость, на форуме IFUD.WS. Обязательно рекомендуется к прочтению правила форума http://ifud.ws/threads/obnovleno-pravila-foruma.7759

Поиск уязвимостей в БД универа

Тема в разделе "Веб-Уязвимости | Эксплуатация", создана пользователем Timmy, 14 янв 2017.

  1. TopicStarter Overlay
    Timmy

    Timmy

    Регистрация:
    3 дек 2016
    Сообщения:
    5
    Симпатии:
    0
    Требуется выяснить срочно. У нас в универе самописный сервис проведения тестирования. Авторизация по ФИО и номеру зачетки, выбор предмета. Отмечаете правильные ответы и нажимаете "Заверишить" после чего система сразу выдает балл. Тесты содержатся в бд. Неизвестен номер отдельного теста. ОДнако в адресной строке можно найти номер общего тестирования

    Код:
     [URL='http://*******.ru/Views/Student/TestingView.aspx?testId=24284']http://*******.ru/Views/Student/TestingView.aspx?testId=24284 [/URL]
    Войти или зарегистрироваться, чтобы увидеть ссылку.
    24284 - это номер тестирования по этому предмету.

    Покидайте ссылки или опишите в кратце как проверить БД на уязвимости? В каком файле/директории может находится файл с правильными ответами? Требуется срочно так как доступ к системе тольео есть сидеть из под сети универа.

    При добавлении ' в адресную строку выходить вот это

    Войти или зарегистрироваться, чтобы увидеть ссылку.

    Признак ли это наличия уязвимости?

    п.с. Если что описал не так то сорри, я нуб в данной области. Но буду благодарен если поможете мне вытащить тесты ибо решать их в ручную - лень(
     
    Метки:
  2. LittleBears

    LittleBears

    Регистрация:
    24 окт 2016
    Сообщения:
    97
    Симпатии:
    28
    Думаю там сто пудов есть дыра.Глянь на это все через ZAProxy или BurpSuite тебе выдаст что там по дыркам.Не забудь только проксю натянуть а лучше ВПН иначе пиздец тебе.Там сто пудов логируются айпишники юзверей. Удачи
    [doublepost=1484395784][/doublepost]А уязвимость я так вижу есть при подставки кавычки.Ты читай внимательно что там просто заблочен вывод "код ошибки" то есть типа "Mysqli error...."..Тебе вывело стандарт страницу ошибки просто без "кода ошибки". Попробуй покрутить скулю вручную или сразу через SQLmap пробуй.
     
  3. TopicStarter Overlay
    Timmy

    Timmy

    Регистрация:
    3 дек 2016
    Сообщения:
    5
    Симпатии:
    0
    Спасибо за ответ. Насчет айпи - доступ к сайту универа только если залогиниться на университетском вайфае. Пароль знают далеко не все. То есть насчет анонимности я не печусь - если и спалять - то адрес сети самого универа.

    теперь сабж. Спасибо попробую. Правда придется тащиться с ноутом в универ и торчать в коридорах))

    Я сделал локальную копию страниц с непосредственным тестированием что бы понять как он запоминает их и как сравнивает с правильными

    Вот пример кусок кода. Тут непосредственно компоненты и кажется, запоминается тот вариант который выбрал пользователем
    Код:
    </script>
    
            <div id="UpdatePanel1">
        
            <div style="vertical-align: top; min-height: 300px; height:auto; padding-left: 10px;">
                <div id="questionDiv">Вопрос </div><br>
                <div id="answersDiv"><table border="0" cellspacing="10">
    <tbody><tr><td>
    <input name="ch" id="ch0" value="0" disabled="disabled" type="checkbox"></td><td>
    <label for="ch0">Ответ 0 </label></td></tr>
    <tr><td>
    <input name="ch" id="ch1" value="1" checked="checked" disabled="disabled" type="checkbox"></td><td>
    <label for="ch1">Ответ 1 </label></td></tr>
    <tr><td>
    <input name="ch" id="ch2" value="2" disabled="disabled" type="checkbox"></td><td>
    <label for="ch2">Ответ 2 </label></td></tr>
    <tr><td>
    <input name="ch" id="ch3" value="3" checked="checked" disabled="disabled" type="checkbox"></td><td>
    <label for="ch3">Ответ 3 </label></td></tr>
    </tbody></table>
    </div>
    
    Вот тут кнопки навигации. Вместо "завершить просмотр" на самом экзамене бывает "завершить тестирование"

    Код:
      <table width="100%">
                <tbody><tr>
                    <td>
                        <input name="prevButton" value="&lt;&lt; Предыдущий" id="prevButton" title="Предыдущий вопрос" style="width:150px;" type="submit">&nbsp;
                        <input name="nextButton" value="Следующий &gt;&gt;" id="nextButton" title="Следующий вопрос" style="width:150px;" type="submit">
                    </td>
                    <td align="right">
                        <input name="completeButton" value="Завершить просмотр" id="completeButton" type="submit">
                    </td>
                </tr>
                <tr>
    <td id="navigatorLinksTd"><br><a id="nav0" href="javascript:_nv(0)" style="color:red">1</a>&nbsp; | &nbsp;<a id="nav1" href="javascript:_nv(1)" style="color:red">2</a>&nbsp; | &nbsp;<a id="nav2" href="javascript:_nv(2)" style="color:red">3</a>&nbsp; | &nbsp;<a id="nav3" href="javascript:_nv(3)" style="color:red">4</a>&nbsp; | &nbsp;<a id="nav4" href="javascript:_nv(4)" style="color:red">5</a>&nbsp; | &nbsp;<a id="nav5" href="javascript:_nv(5)" style="color:red">6</a>&nbsp; | &nbsp;<a id="nav6" href="javascript:_nv(6)" style="color:red">7</a>&nbsp; | &nbsp;<a id="nav7" href="javascript:_nv(7)" style="color:red">8</a>&nbsp; | &nbsp;<a id="nav8" href="javascript:_nv(8)" style="color:red">9</a>&nbsp; | &nbsp;<span style="font-weight: bold">10</span>&nbsp; | &nbsp;<a id="nav10" href="javascript:_nv(10)" style="color:red">11</a>&nbsp; | &nbsp;<a id="nav11" href="javascript:_nv(11)" style="color:red">12</a>&nbsp; | &nbsp;<a id="nav12" href="javascript:_nv(12)" style="color:red">13</a>&nbsp; | &nbsp;<a id="nav13" href="javascript:_nv(13)" style="color:red">14</a>&nbsp; | &nbsp;<a id="nav14" href="javascript:_nv(14)" style="color:red">15</a>&nbsp; | &nbsp;<a id="nav15" href="javascript:_nv(15)" style="color:red">16</a>&nbsp; | &nbsp;<a id="nav16" href="javascript:_nv(16)" style="color:red">17</a>&nbsp; | &nbsp;<a id="nav17" href="javascript:_nv(17)" style="color:red">18</a>&nbsp; | &nbsp;<a id="nav18" href="javascript:_nv(18)" style="color:red">19</a>&nbsp; | &nbsp;<a id="nav19" href="javascript:_nv(19)" style="color:red">20</a>
    

    Пара функций. Кажется тут идет подсчет баллов. Но не могу разобраться каким образом
    Код:
                    <script language="javascript" type="text/javascript">
                    <!--
                    var theForm = document.forms['form1'];
                    if (!theForm) { theForm = document.form1; }
                    function _nv(nv_value) {
                        theForm.navigatorHiddenField.value = nv_value;
                        __doPostBack('nav'+nv_value,'');
                        }
                    // -->
                    </script>
    </td>
    
                    <td></td>
                </tr>
            </tbody></table>
        
            <input name="replyHiddenField" id="replyHiddenField" value="1;3;" type="hidden">
            <input name="currentTaskIndexHiddenField" id="currentTaskIndexHiddenField" value="9" type="hidden">
            <input name="navigatorHiddenField" id="navigatorHiddenField" value="9" type="hidden">
            </div>
    
    <script type="text/javascript">
    //<![CDATA[
    Sys.Application.initialize();
    Sys.Application.add_init(function() {
        $create(Sys.UI._UpdateProgress, {"associatedUpdatePanelId":null,"displayAfter":500,"dynamicLayout":true}, null, null, $get("updateProgress"));
    });
    //]]>
    </script>
    
    
    [/QUOTE]

    В общем, наверно в итоге нужен файл(?) или то где хранятся правильные ответы. Какие могут быть идеи? Хотя бы сам алгоритм, а дальше я попытаюсь разобраться.
    Могу так же скинуть полный html код страницы. Мб будет понятней
     
  4. LittleBears

    LittleBears

    Регистрация:
    24 окт 2016
    Сообщения:
    97
    Симпатии:
    28
    В общем, наверно в итоге нужен файл(?) или то где хранятся правильные ответы. Какие могут быть идеи? Хотя бы сам алгоритм, а дальше я попытаюсь разобраться.
    Могу так же скинуть полный html код страницы. Мб будет понятней[/QUOTE]
    На кой фиг тебе html код страницы?Он не даст тебе ничегошеньки.Сравнение идет с БД MySQL вероятнее всего. Как работает? Легко. Обработчик принимает значение сравнивает с правильным значением в БД и если гуд то дальше выполняет что-то.... На счет локалки измени мак адрес. Если работает только когда ты сидишь на вафле значит это локальный сервак который не торчит в инет.
    [doublepost=1484398002][/doublepost]Если хочешь могу помочь хакнуть этот сайтец...Стукни мне в жабу: littlebear@0nl1ne.at
     
  5. nikitoz_tavr

    nikitoz_tavr

    Регистрация:
    16 июл 2012
    Сообщения:
    75
    Симпатии:
    3
    решили проблему? интересно
     
  6. TopicStarter Overlay
    Timmy

    Timmy

    Регистрация:
    3 дек 2016
    Сообщения:
    5
    Симпатии:
    0
    Экзамен я сдал без этого, ибо времени не было. И по крайней мере до июня не актуально. Однако попытаюсь все же что нибудь придумать
     
  7. Coder3234

    Coder3234

    Регистрация:
    22 фев 2016
    Сообщения:
    13
    Симпатии:
    0
    Видимо, не придумал. А к сведению, выше правильно всё написали. Скрипт (ASP-шный) берёт то что ты ввёл (в html форме), и сравнивает с теми правильными значениями - что в БД. То что Javascript - это нужно там только для стороны клиента, что бы, например, динамически тебе вывести что-либо (приукрасить там и пр.).. Все подсчёты полюбому происходят на стороне сервера, и посмотреть их ты так просто не сможешь..
    Попробуй юзануть SqlMap, наврядли, но кто знает, может и поможет.
     

Поделиться этой страницей

Загрузка...