Расшифровка TCP пакетов

Discussion in 'Этичный хакинг или пентестинг' started by Matrix3007, 2 Feb 2020.

  1. Matrix3007

    Matrix3007 New Member

    Joined:
    3 Aug 2019
    Messages:
    11
    Likes Received:
    0
    Reputations:
    0
    В общем, имеется ссылка на какую-то страницу какого-то сайта. Чтоб получить нормальный ответ, нужно открыть ссылку с их же приложения-клиента (на андроиде), иначе можно получить только предупреждение о том, что ссылка только для мобилок. Задача: посмотреть, как формируется запрос и подделать его. С самого приложения пакеты отправляются на 443 порт, только вот это TCP. На счет андроида я не заморачивался и сэмулировал его с помощью BlueStacks. Пакеты ловил с Wireshark. Приложение вроде как получает нормальный ответ, но в пакетах он нечитаем. То есть, всё, что я вижу, выглядит примерно так:

    ...G.9...p.a.C.U7448...Ky+..y:~._...,sW.......S.....b...9.Z...w4...\.E.?...\.a)...

    ...............................h2.http/1.1.......

    Понимаю, что шифрование, но делать с этим что-то надо. Есть какие-нибудь варианты?
     
    1. winstrool

      winstrool ~~*MasterBlind*~~

      Joined:
      6 Mar 2007
      Messages:
      1,413
      Likes Received:
      910
      Reputations:
      863
      Я подобное перехватывал с помощь бурпа, на телефоне/эмуляторе устанавливаем прокси на комп где запущен бурп, далее импортируем сертификат бурпа, и начинаем юзать приложуху
       
      _________________________
      1. Matrix3007

        Matrix3007 New Member

        Joined:
        3 Aug 2019
        Messages:
        11
        Likes Received:
        0
        Reputations:
        0
        Тоже мысль промелькала, но ведь он tcp не перехватывает, только http. Возможно, я чего-то не понимаю)
         
        1. Matrix3007

          Matrix3007 New Member

          Joined:
          3 Aug 2019
          Messages:
          11
          Likes Received:
          0
          Reputations:
          0
          Там получается так: если приходит http, серв отправляет предупреждение, а нормальный ответ даёт только на сформированный клиентом tcp запрос, который я не то что подделать - прочитать не могу.
           
          1. winstrool

            winstrool ~~*MasterBlind*~~

            Joined:
            6 Mar 2007
            Messages:
            1,413
            Likes Received:
            910
            Reputations:
            863
            Все норм он будет перехватывать, если правильно сделаете.
             
            _________________________
            1. Matrix3007

              Matrix3007 New Member

              Joined:
              3 Aug 2019
              Messages:
              11
              Likes Received:
              0
              Reputations:
              0
              И всё-таки, Burp Suite прокси работает по протоколу http. Да и я уже пробовал его юзать, только немного по-другому. Я весь трафик с компа отправлял на 127.0.0.1:8080 (прокси бурпа) и потом уже просматривал содержимое ссылки с приложения. Ответ получал, а в бурпе ничего не было.
               
              1. molemime

                molemime Member

                Joined:
                6 Dec 2017
                Messages:
                53
                Likes Received:
                20
                Reputations:
                0
                http это сетевой протокол, работающий на стеке протокола tcp/ip только уровень другой по модели osi
                 
                Dark~Angel likes this.
                1. aberkroft

                  aberkroft Member

                  Joined:
                  9 Feb 2020
                  Messages:
                  43
                  Likes Received:
                  14
                  Reputations:
                  3
                  Запишите трафик wireshark-ом, например
                   
                  1. Hohol99

                    Hohol99 Member

                    Joined:
                    7 Apr 2020
                    Messages:
                    61
                    Likes Received:
                    17
                    Reputations:
                    0
                    Неверно, к сожалению. HTTP/HTTPS - протколы прикладного уровня, а TCP - транспортного, представьте матрешку, в итоге мы имеем следующее - прикладной уровень разделили на порции и отправили внутри транспортного, см. модель OSI.

                    В этом и суть зашифрованного трафика, что расшифровать его может только владелец приватного ключа (сервер), в клиентском приложении его нет.
                    Решение выглядит вот так: распаковать приложение, заменить его родной сертификат сертификатом, выпущенным при помощи burp suit/Fidler
                    настроить прокси и наблюдать за идущим расшифрованным
                     
                    1. tarasov2000

                      tarasov2000 New Member

                      Joined:
                      9 Jun 2021
                      Messages:
                      2
                      Likes Received:
                      0
                      Reputations:
                      0
                      Приватный ключ с приложения вытаскивай и им расшифровывай ответы с сервера. Чтоб посмотреть что на сервер уходит - подмени сервер на свой, узнаешь первый запрос, отправишь его на настоящий, посмотришь ответ и так далее
                      Для твоей задачи не так много запросов будет, быстрее все в ручном режиме сделать
                       
                      1. fandor9

                        fandor9 Reservists Of Antichat

                        Joined:
                        16 Nov 2018
                        Messages:
                        630
                        Likes Received:
                        1,050
                        Reputations:
                        47
                        Вот кстати тоже недавно открыл для себя метод для андроида:
                        1. Устанавливаем приложение PCAP Remote из PlayStore / APK
                        2. Запускаем PCAP и выбираем, что хотим снифить: если весь трафик, то выбираем кнопку плэй, если только одно приложение, то выбираем кнопку плэй с единичкой и потом выбираем в списке приложение, которое желаем снифить. Дальше в приложение будет указаны параметры соединения, допустим 192.168.1.111 и порт 12345)
                        3. Запускаем на компе Wireshark и выбираем в списке интерфейсов "SSH remote capture: sshdump" и задаём параметры, которые указаны в приложение (192.168.1.111 и порт 12345). И важно указать какое-либо имя пользователя и пароль, иначе выкинет ошибку...
                        4. Собственно всё... ну почти... приложение само подменяет сертификат (rootCA можно експортировать в настройках, там-же можно поменять порт и сетевой интерфейс), но начиная с 7-го андроида, по дефолту приложение не принимает левые серты и нужно пересобирать приложение (https://egorovandreyrm.com/pcap-remote-tutorial/#decrypting_https_tls_traffic)
                        5. К тому же если в приложение будет стоять пининг сертификата, то нужно будет и его выпилить.
                        Инструкция самого автора: https://egorovandreyrm.com/pcap-remote-tutorial/
                        и исходники: https://github.com/egorovandreyrm/pcap-remote
                         
                        1. b3

                          b3 Banned

                          Joined:
                          5 Dec 2004
                          Messages:
                          2,174
                          Likes Received:
                          1,157
                          Reputations:
                          202
                          приватный ключ не может быть в приложении иначе что это за приватный ключ.
                           
                          Svan likes this.
                          1. Svan

                            Svan Well-Known Member

                            Joined:
                            24 Sep 2020
                            Messages:
                            68
                            Likes Received:
                            363
                            Reputations:
                            2
                            А зачем?
                             
                            1. Svan

                              Svan Well-Known Member

                              Joined:
                              24 Sep 2020
                              Messages:
                              68
                              Likes Received:
                              363
                              Reputations:
                              2
                              ноду тор-а у себя запусти, и то больше информации найдешь.
                               
                              1. fandor9

                                fandor9 Reservists Of Antichat

                                Joined:
                                16 Nov 2018
                                Messages:
                                630
                                Likes Received:
                                1,050
                                Reputations:
                                47
                                [​IMG]