Предлагаемая технология позволяет передавать данные через интерактивные элементы интернет сайтов. Зачем передавать данные через какие-то элементы это последний вопрос, но все же изначальное назначение подобной извращенной схемы передачи данных заключается в обходе средств ограничения доступа к ресурсам интернет сети. Все это, грубо говоря, можно назвать - халявный интернет. 

Начнем с того, что найдем потенциальных жертв для нашей технологии: 

  1. Провайдеры, предоставляющие бесплатный доступ к статистике использования вашего счета. 
  2. Провайдеры, предоставляющие бесплатный доступ только к нескольким сайтам. 
  3. Крупные заводы и предприятия, предоставляющие корпоративным пользователям доступ к внутренней странице завода (предприятия). 
  4. И другие.. 

В большинстве случаев предоставляемые страницы содержат некоторые сервисы, например: 

  1. Предоставление статистики пользования интернетом.
  2. Изменение паролей.
  3. Изменение некоторой другой информации.
  4. Чаты, форумы, голосования.
  5. И любые другие сервисы, подразумевающие хранение какой-либо информации на сервере. 

Для получения "халявного интернета" должно обязательно соблюдаться правило:
интерактивный элемент должен быть доступен как со стороны бесплатного доступа, так и со стороны интернета.
Т.е., например, вы можете поменять свой пароль как с бесплатного доступа, так и через полноценный интернет. Самым сложным методом передачи информации является метод передачи данных через элемент изменения пароля (зато данный сервис имеется у большинства подобных предоставляемых доступов).
Начнем же мы рассмотрение наиболее простого варианта:
передача данных через ЧАТ. 

Представим что у нас имеется предприятие, предоставляющее доступ к своей корпоративной странице своим работникам, но к интернету доступ вам не дали. Эта страница так же доступна со стороны интернета. На этой странице находится ЧАТ. 
Чтобы, например, нам получить страницу yandex.ru, нам необходимо в интернет положить так называемый ТРОЯН, который будет периодически проверять страницу с ЧАТом, и при появлении сообщения с запросом http://... сделает данный запрос и вернет результат обратно в чат. Нам остается лишь выдернуть результат работы "трояна" из чата, сохранить его в файле. Вы понимаете, что для этого нам необходим "свой" сервер. 

С чатом все понятно, однако не каждый бесплатный сервис включает такую вещь как ЧАТ. Но зато почти каждый из них имеет форму для смены пароля. Как передавать данные через форму с паролем? Подумайте, как вы будете передавать информацию, если у вас нет непосредственной связи с вашим сервером в интернете? У нас есть серверная часть
(со стороны интернета) и клиентская (со стороны корпоративной сети). В обязанности обоих сторон входит отслеживание состояния и собственно передачи информации. И то и другое мы будем делать через форму смены пароля. 

Рассмотрим вариант: 

Давайте условимся, что пароль "1" - будет означать
дефолтовую ситуацию или сброс, когда ничего не передается.
"2" - начало передачи данных, запрос. "3" - подтверждение передачи, успешная передача 

  1. Теперь со стороны корпоративной сети устанавливаем пароль
    "2" (по умолчанию установлен пароль "1") и периодически проверяем пароль. 
  2. Скрипт со стороны интернета увидев, что пароль "2", в свою очередь подтверждает это
    установкой пароля "3", это значит, что он принял наш сигнал и готов к получению запроса. 
  3. Мы проверяем это событие проверкой пароля, и если пароль = "3",
    то теперь настала очередь передачи данных. За один раз мы передадим 1 бит,
    а запрос может быть, например, из 20 байт. Мы устанавливаем пароль
    "a". 
  4. Со стороны интернета происходит следующее.
    Скрипт производит проверку, установлен пароль "a" или
    "b". (если ни один из них не подходит, то проверяется пароль "1", что значит конец передачи данных).
    Исходя из того, какой из двух вариантов
    записан делается вывод, пришел бит 1 или 0, а значит мы передали 1 бит. 
  5. После перебора, скрипт со стороны интернета устанавливает пароль "2", что значит, что нужно
    передать следующий бит. 
  6. Передается следующий. 
  7. По окончании передачи клиент устанавливает
    пароль "1" и теперь начинает работать в режиме приема. 
  8. В это время интернетовский скрипт получив те 20 байт
    (запрос, например URL), выполняет его (например скачивает
    указанный URL). 
  9. После скачивания страницы по заданному URL, он выставляет пароль "2", а мы
    (со стороны халявного доступа) ждем этого пароля. 
    a. Получив пароль "2" мы устанавливаем пароль "3". 
    b. А скрипт со стороны интернета, определив, что уже установлен пароль "3", начинает побитовую
    передачу. Мы подтверждаем каждый бит установкой пароля "3". 
    .... 

Написать скрипты не так и сложно, написать универсальный движок под любые нужды
- намного сложнее. Существующие наброски движка на Perl не готовы к работе и по
этой причине не выкладываются. Хочется лишь указать на некоторые моменты, если вы возьметесь самостоятельно за
разработку движка: 

1. Тест упаковщиков (передаваемые данные обязательно должны быть упакованы, а
лучше еще и зашифрованы) Т.к. передаваемые запросы могут быть очень маленькими,
соответственно нужен оптимальный упаковщик. 

Содержимое файла ass (512 байт): 

asasasasasasasasasasasasasasasasa 
asasasasasasasasasasasasasasasasa 
asasasasasasasasasasasasasasasasa 
asasasasasasasasasasasasasasasasa 
asasasasasasasasasasasasasasasasa 
asasasasasasasasasasasasasasasasa 
asasasasasasasasasasasasasasasasa 
asasasasasasasasasasasasasasasasa 
asasasasasasasasasasasasasasasasa 
asasasasasasasasasasasasasasasasa 
asasasasasasasasasasasasasasasasa 
asasasasasasasasasasasasasasasasa 
asasasasasasasasasasasasasasasasa 
asasasasasasasasasasasasasasasasa 
asasasasasasasasasasas 

Упаковщик - объем упакованного файла:
GZ 48 
BZ2 51 
LZH 54 
RAR 98 
ZIP 118 // winrar zip 
7Z 119 
ARJ 121 
ZIP 130 // 7z zip 

2. Писать удобнее на Perl (по моему личному мнению)
используя модули: LWP, Compressed::ZLib, MIME::Base64.

Данная статья может свободно распространяться (при условии сохранения ссылки на
сайт автора), как сама 8)), так и при помощи хороших людей и проектов, для чего собственно и была написана. 

Автор статьи : jkeks (http://jkeks.far.ru)

Ну и наконец, ищите в инете проект ret WebOS.

  • Подпишись на наc в Telegram!

    Только важные новости и лучшие статьи

    Подписаться

  • Подписаться
    Уведомить о
    0 комментариев
    Межтекстовые Отзывы
    Посмотреть все комментарии