Перейти к содержимому

MOAB

* * * * * 1 Голосов

Найти в файлах редиректы на Javascript (с помощью php)

js javascript

  • Войдите, чтобы ответить
Сообщений в теме: 10

#1 GogA

GogA

    Продвинутый

  • Основатель
  • PipPipPip
  • 334 сообщений
356
  • ИзMoscow

Отправлено 13 Ноябрь 2016 - 17:05

Есть задача: найти на сервере редиректы на javascript. То есть пройтись по файлам и найти там редиректы.

Простые редиректы, вроде:
document.location.href = 'http://site.ru';

Находятся легко:
preg_match_all('#(.*?)location[^\'\"\?\;]*?[\'\"]+(.*?)[\'\"]+[^\;]*?\;#isx', $result, $rjs);

Но вариантов редиректов десятки. Под каждый писать регулярки?

Думал про эмуляцию js движка, но как-то кажется тяжеловато будет для большого количества файлов.

Предлагаю обсудить варианты решения.

#2 azsx

azsx

    Почетный

  • Основатель
  • PipPipPipPipPip
  • 5 006 сообщений
3 127

Отправлено 13 Ноябрь 2016 - 17:20

Цитата

Думал про эмуляцию js движка, но как-то кажется тяжеловато будет для большого количества файлов.
Я бы выделил самые трафиковый страницы и слил бы их imacros'ом (или plathonjs если важно пхп). Затем бы искал по аналогиям на всём сайте или в БД, то есть узнал бы правило формирования. Недостаток моего метода очевиден, 100% покрытия нет.
Если надо всё - то надо сайт слить на свой хостинг (локалхост) где нет ограничений по ресурсам и можно обрабатывать не задумываясь, что сттраниц много.

#3 GogA

GogA

    Продвинутый

  • Основатель
  • PipPipPip
  • 334 сообщений
356
  • ИзMoscow

TC Отправлено 13 Ноябрь 2016 - 20:36

Просмотр сообщенияazsx (13 Ноябрь 2016 - 17:20) писал:

Если надо всё - то надо сайт слить на свой хостинг (локалхост) где нет ограничений по ресурсам и можно обрабатывать не задумываясь, что сттраниц много.

Почти так и есть. Главный вопрос: как обрабатывать?

#4 Матумба

Матумба

    во имя матана

  • Участник
  • PipPipPipPipPip
  • 5 096 сообщений
6 416
  • ИзКрии

Отправлено 14 Ноябрь 2016 - 06:07

Просмотр сообщенияGogA сказал:

Думал про эмуляцию js движка, но как-то кажется тяжеловато будет для большого количества файлов.
Эта задача просто не решается. Нужен сендбокс с яваскриптом, иначе никак.
"Бескорыстие и любовь к ближнему в себе надо давить"
Почти правильный сеосервис

#5 Serg_pnz

Serg_pnz

    Hanswurst

  • Старая гвардия
  • PipPipPipPipPip
  • 2 060 сообщений
1 657
  • Из*** гонец? Гонец из Пензы?... Нет – реальный гонец!

Отправлено 14 Ноябрь 2016 - 08:57

Никак не пойму зачем это надо :(
А если правильно понял, то обойти сайт на локалке можно с помощью браузера, greasemonkey и переопределения функций js (в js можно переопределить стандартные)
Цены на рекламу на форуме Webimho | Пущу на квартиру VPS саттелиты по 30 руб./мес.
Ида: Не все кальсоны с оторванными пуговицами – брюки. © Serg_pnz

#6 KaSH

KaSH

    Инструктор по счастью

  • Основатель
  • PipPipPipPip
  • 1 288 сообщений
2 201
  • Изморя и с гор

Отправлено 14 Ноябрь 2016 - 13:33

Да, просто так задачу, наверное, не решить.
Раньше, для проверки сайтов на всякую гадость я использовал Manul от Яндекса. https://yandex.ru/promo/manul/
К сожалению, он закрылся :( Есть на GitHub - https://github.com/antimalware/manul/
Можно было его на сайте пустить, потом файл с результатами отсортировать по дате (при заражении сайта гадостью, дата изменения файлов новее), и смотреть по уровню опасности, и что именно он считает опасным. Довольно не затратно по времени, можно было что-то найти, за что зацепится, и, если что, проверить уже руками. Он всякие стремные куски js кода помечает как потенциально опасные.
Серьезные сайты размещаю на VPS, простые в SprintHost и в TimeWeb. Старые, более ненужные мне сайты я продаю на Телдери. Бухгалтерию и отчеты в налоговую за меня делает Эльба.

#7 GogA

GogA

    Продвинутый

  • Основатель
  • PipPipPip
  • 334 сообщений
356
  • ИзMoscow

TC Отправлено 14 Ноябрь 2016 - 16:33

Просмотр сообщенияДартаньян (14 Ноябрь 2016 - 06:07) писал:

Эта задача просто не решается. Нужен сендбокс с яваскриптом, иначе никак.

Вот примерно то что точно будет работать, но как это реализовать?



#8 azsx

azsx

    Почетный

  • Основатель
  • PipPipPipPipPip
  • 5 006 сообщений
3 127

Отправлено 14 Ноябрь 2016 - 17:14

Цитата

Вот примерно то что точно будет работать, но как это реализовать?
imacros скачать и xenu заранее слив урлы, затем слить всё, разве не то? В смысле не плагин, а браузер.

#9 GogA

GogA

    Продвинутый

  • Основатель
  • PipPipPip
  • 334 сообщений
356
  • ИзMoscow

TC Отправлено 14 Ноябрь 2016 - 17:52

Просмотр сообщенияazsx (14 Ноябрь 2016 - 17:14) писал:


imacros скачать и xenu заранее слив урлы, затем слить всё, разве не то? В смысле не плагин, а браузер.

А они будут работать из консоли без графического интерфейса?

#10 azsx

azsx

    Почетный

  • Основатель
  • PipPipPipPipPip
  • 5 006 сообщений
3 127

Отправлено 14 Ноябрь 2016 - 18:21

нет.
Зато phantomjs-2.1.1-windows заработает.
зы
раз вам иксы сложнее поставить, чем в мути нерусской разобраться.

#11 Матумба

Матумба

    во имя матана

  • Участник
  • PipPipPipPipPip
  • 5 096 сообщений
6 416
  • ИзКрии

Отправлено 15 Ноябрь 2016 - 00:44

Просмотр сообщенияGogA (14 Ноябрь 2016 - 16:33) писал:

Вот примерно то что точно будет работать, но как это реализовать?
По идее можно как-то грузить в node.js или webdriver и снимать потом статусы и состояния. Но я с ними не работал. Также к php есть биндинги от v8. Может там есть что-то аналогичное снимку системы для отладки.
Но это всё так, на уровне "это должно быть там".
"Бескорыстие и любовь к ближнему в себе надо давить"
Почти правильный сеосервис





Также с тегом js, javascript

Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 анонимных



© 2019 SMO&SEO форум «WEBIMHO» — продвижение и создание сайтов, интернет-маркетинг

По вопросам рекламы на форуме и цены на рекламу
Все материалы SEO форума разрешены к копированию только с установкой гиперактивной ссылки на webimho.ru,
тем, кто этого не сделает, мы оторвем руки и ноги и поменяем местами,
а когда выйдем из тюрьмы, опять оторвем и опять поменяем.


Россия, г. Москва

Мы в соцсетях: twitter | вконтакте | facebook | livejournal