Сейчас на форуме: igorcauret (+8 невидимых)

 eXeL@B —› Вопросы новичков —› Запретить программе доступ в интернет
Посл.ответ Сообщение

Ранг: 10.5 (новичок)
Активность: 0.010
Статус: Участник

Создано: 24 декабря 2014 00:23
· Личное сообщение · #1

Есть программа.
При запуске рвётся в интернет.
Запрос выглядит как :
Например

Сервер: 23.37.43.28 - TCP
Порт: http(80)

Блокирую фаерволом.
Но хотелось бы узнать как пропатчить что бы обойтись без фаервола.
Как найти откуда в программе идёт запрос ?



Ранг: 0.0 (гость)
Активность: 0.250
Статус: Участник

Создано: 24 декабря 2014 00:35
· Личное сообщение · #2

Зависит от того, как она стучит в сеть, вы хотя бы импорт скинули.
А так, смотрите в импорте Ws2_32.dll, Wininet.dll.. какой нибудь curl или дровина, когда определите как именно идет соединение, то вместе проверки соединения возвращайте отсутствие сети, а тут уже зависит от используемой технологии.



Ранг: 10.5 (новичок)
Активность: 0.010
Статус: Участник

Создано: 24 декабря 2014 00:52
· Личное сообщение · #3

F_a_u_s_t, спасибо.
Да некоторые элементы присутствуют
Ws2_32.dll,
WinHTTP.dll,


Code:
  1. ...то вместе проверки соединения возвращайте отсутствие сети...

А можно об этом немного поподробнее?



Ранг: 0.0 (гость)
Активность: 0.250
Статус: Участник

Создано: 24 декабря 2014 01:22
· Личное сообщение · #4

WSAStartup, connect, send, в приоритетном порядке, тут опять, многое зависит от кода, от того, как разработчик составил условия.
Загружайте программу в отладчик и ставьте BP на перечисленные апишки, когда сработает, то смотрите ниже на условия jnz\je соединение есть прыгаем\не прыгаем, аналогично при отсутствии, хотя разработчик мог засунуть проверку в отдельную функции, но это довольно редкое явление.
C WinHTTP аналогично.
Проверка идет на ноль, если ноль то выполняем, иначе ошибка, список констант смотрим в хидеры или MSDN с последующим поиском в гугле.

| Сообщение посчитали полезным: tekton

Ранг: 251.3 (наставник), 81thx
Активность: 0.140.11
Статус: Участник

Создано: 24 декабря 2014 15:23
· Личное сообщение · #5

Пропатчи айпишник или DNS-имя куда она коннектится на 127.0.0.1 и все дела.



Ранг: 419.0 (мудрец), 647thx
Активность: 0.460.51
Статус: Участник
"Тибериумный реверсинг"

Создано: 24 декабря 2014 17:42
· Личное сообщение · #6

подобная тема была уже до этой темы, только найти не могу. там вроде более кардинальный способ предложен был-заменить системные длл'ки (которые в system32), которые отвечают за сеть



Ранг: 512.7 (!), 360thx
Активность: 0.270.03
Статус: Модератор

Создано: 25 декабря 2014 00:18
· Личное сообщение · #7

tekton пишет:
Как найти откуда в программе идёт запрос ?


запустить хороший API-логгер и узнать какую АПИ дергает прожка




Ранг: 110.8 (ветеран), 104thx
Активность: 0.090.01
Статус: Участник

Создано: 25 декабря 2014 18:07
· Личное сообщение · #8

sendersu пишет:
запустить хороший API-логгер и узнать какую АПИ дергает прожка


А лучше запилить свой - универсальный :D



Ранг: 10.5 (новичок)
Активность: 0.010
Статус: Участник

Создано: 25 декабря 2014 18:15
· Личное сообщение · #9

cppasm пишет:
Пропатчи айпишник или DNS-имя куда она коннектится на 127.0.0.1 и все дела.

Как найти в проге эти значения?
И в обычном виде искал и в Hex и в строках....
Если можно с конкретным примером.



Ранг: 488.1 (мудрец), 272thx
Активность: 0.350
Статус: Участник

Создано: 25 декабря 2014 18:24 · Поправил: VodoleY
· Личное сообщение · #10

tekton вы задаете вопрос НО не потрудились описать исходные данные
1. на чем написана???
2. есть ли упаковка или навешен протектор?
3. нет файла, чтоб можно было самостоятельно посмотреть..
З,Ы, вот как вариант.. сожмите UPX любую программу, и потом строки можете искать до посинения. я так понимаю, что даже до варианта юникода у вас дело не дошло
З.Ы.Ы вот смотрите.. на вскидку вам варианты БЕЗ АПИ) нажмите.. пуск-стандартные-выполнить-www.google.com .. ни одного сетевого АПИ по факту не вызывалось, а потом окажется что вам плохо помогали

-----
Наша работа во тьме, Мы делаем, что умеем. Мы отдаем, что имеем, Наша работа во тьме....




Ранг: 0.0 (гость)
Активность: 0.250
Статус: Участник

Создано: 26 декабря 2014 10:20
· Личное сообщение · #11

ELF_7719116 пишет: там вроде более кардинальный способ предложен был-заменить системные длл'ки (которые в system32

Есть другой не менее кардинальный способ, это эмулятор интернета (есть и такое).



Ранг: 0.2 (гость)
Активность: 0=0
Статус: Участник

Создано: 07 января 2015 12:20
· Личное сообщение · #12

если через DNS то можно просто хост на локальный в etc hosts заменить. Ну а так, можно и фаерволом. Давно не ставил себе, но всяко есть такой функционал



Ранг: 13.9 (новичок), 9thx
Активность: 0.010
Статус: Участник

Создано: 12 января 2015 23:08
· Личное сообщение · #13

ИМХО следует хукнуть open и WSAopen. Должно хватить. Если нужна готовая реализация - стучись в личку, есть наработки.


 eXeL@B —› Вопросы новичков —› Запретить программе доступ в интернет
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати