Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - [решено] Расшифровка коротких ссылок

Ответить
Настройки темы
PowerShell - [решено] Расшифровка коротких ссылок

Старожил


Сообщения: 216
Благодарности: 15

Профиль | Отправить PM | Цитировать


Всем доброго времени суток!
Может кто подскажет, есть ли возможность посредством Powershell расшифровать короткие ссылки ?
Например, такие:
Код: Выделить весь код
http://tinyurl.com/yytmg75x/239.195.57.14:1234
В браузере то это без проблем, но нужно расшифровать несколько десятков ссылок.
Можно это сделать через curl.exe (прописана в системной Path)
Код: Выделить весь код
Get-Content J:\Download\123.m3u | ForEach {
(curl.exe -sL --head $_ | Select-String -Pattern 'Location: ([^"]+)' -AllMatches).Matches| 
ForEach-Object {"$($_.Groups[1].Value)"}
}
Но так получаем только ссылки, которые есть в заголовке. На других ошибка.

С помощью чистого Powershell не получится решить такую задачу ?

Отправлено: 15:14, 13-09-2020

 

Забанен


Сообщения: 793
Благодарности: 260

Профиль | Цитировать


Uragan66, в curl предусмотрена возможность извлечения так называемого эффективного URL (конечной точки запроса). Выглядит это примерно так:
Код: Выделить весь код
curl -w "%{url_effective}" -o nul -sIL https://goo.gl/q76cgB
Что касается PowerShell, в разных версиях модель запросов может различаться. В седьмой версии, например, получить URL из пожатой ссылки можно следующим образом:
Код: Выделить весь код
"$((Invoke-WebRequest https://goo.gl/q76cgB).BaseResponse.RequestMessage.RequestUri)"
nmap, к слову, также способен "извлечь" эффективный URL из пожатой ссылки.
Цитата Uragan66:
Но так получаем только ссылки, которые есть в заголовке. На других ошибка.
Покажите сам текстовик.

Последний раз редактировалось greg zakharov, 13-09-2020 в 16:15.

Это сообщение посчитали полезным следующие участники:

Отправлено: 16:00, 13-09-2020 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Ветеран


Сообщения: 1754
Благодарности: 965

Профиль | Цитировать


Антивирус взбунтовался против любых коротких ссылок )))

7.0.3
Код: Выделить весь код
 > $a = Invoke-WebRequest https://goo-gl.ru/6zTJ
ParserError:
Line |
   1 |  $a = Invoke-WebRequest https://goo-gl.ru/6zTJ
     |  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     | This script contains malicious content and has been blocked by your antivirus software.
5.1.19041.1
Код: Выделить весь код
 > $a = Invoke-WebRequest https://goo-gl.ru/6zTJ
At line:1 char:1
+ $a = Invoke-WebRequest https://goo-gl.ru/6zTJ
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
This script contains malicious content and has been blocked by your antivirus software.
    + CategoryInfo          : ParserError: (:) [], ParentContainsErrorRecordException
    + FullyQualifiedErrorId : ScriptContainedMaliciousContent
Это сообщение посчитали полезным следующие участники:

Отправлено: 17:46, 13-09-2020 | #3


Забанен


Сообщения: 793
Благодарности: 260

Профиль | Цитировать


Цитата Foreigner:
Антивирус взбунтовался против любых коротких ссылок
Скриншоты? АВ обычно не бунтуют против "коротышек", они болезненно воспринимают лишь конечные точки таких ссылок, если на таковых была замечена подозрительная активность или сам сервис сжатия ссылок представляет собой нечто сортирное. Так что можно обезопасить себя, отправляя ссылки на сканирование в VirusTotal или тем же nmap (есть соответствующие сценарии) прочекать хосты.

Последний раз редактировалось greg zakharov, 13-09-2020 в 18:15.


Отправлено: 18:08, 13-09-2020 | #4


Старожил


Сообщения: 216
Благодарности: 15

Профиль | Отправить PM | Цитировать


Цитата greg zakharov:
Покажите сам текстовик »
ссылки могут быть разные, это тв потоки с различных сервисов.
Пример:
Код: Выделить весь код
https://rebrand.ly/deo_/OLEG/2
http://rebrand.ly/deooleg/352
http://tinyurl.com/y3ks3hy8
http://zigfreed.ru/Sv2/741.m3u8
http://zigfreed.ru/Sv2/4.m3u8
http://zigfreed.ru/Sv2/18.m3u8
На двух первых ссылках мой код "спотыкается"
Ваш код с curl их тоже не расшифровывает.
А код для седьмой версии PowerShell срабатывает отлично со всеми ссылками. За что Вам огромное спасибо. Этот код работает на 6-й и 7-й версиях. На 5.1 срабатывает, ошибок нет, но вывод пустой.
Для 5.1 получится подобная модель запроса ?

Цитата Foreigner:
Антивирус взбунтовался против любых коротких ссылок »
у меня нормально по этому поводу...
Но чисто Invoke-WebRequest для моей задачи не подходит. По некоторым ссылкам он просто возвращает развёрнутый плейлист, а не одну ссылку.

Отправлено: 18:35, 13-09-2020 | #5


Ветеран


Сообщения: 1754
Благодарности: 965

Профиль | Цитировать


Изображения
Тип файла: png ss-20200913184238.png
(542.9 Kb, 6 просмотров)

Цитата greg zakharov:
Скриншоты? »

Отправлено: 18:45, 13-09-2020 | #6


Забанен


Сообщения: 793
Благодарности: 260

Профиль | Цитировать


Foreigner, Windows Defender? А вы не пробовали задавать запрос так:
Код: Выделить весь код
Invoke-WebRequest -Uri https://goo-gl.ru/6zTJ
?

Цитата Uragan66:
Для 5.1 получится подобная модель запроса ?
Да. По крайней мере насколько помню, Invoke-WebRequest в 5.1 также работал.

Цитата Uragan66:
Ваш код с curl их тоже не расшифровывает.
Код с curl ничего не расшифровывает. Это называется получение эффективного адреса. Виндовый curl сильно кастрирован по части функциональности.

Последний раз редактировалось greg zakharov, 13-09-2020 в 19:04.

Это сообщение посчитали полезным следующие участники:

Отправлено: 18:53, 13-09-2020 | #7


Аватара для Fors1k

Старожил


Сообщения: 193
Благодарности: 112

Профиль | Отправить PM | Цитировать


Цитата Uragan66:
Для 5.1 получится подобная модель запроса ? »
Код: Выделить весь код
"$((iwr tinyurl.com/anf54v).BaseResponse.ResponseUri)"
Это сообщение посчитали полезным следующие участники:

Отправлено: 18:54, 13-09-2020 | #8


Старожил


Сообщения: 216
Благодарности: 15

Профиль | Отправить PM | Цитировать


Fors1k, работает отлично. Спасибо большое!

Отправлено: 19:00, 13-09-2020 | #9


Старожил


Сообщения: 216
Благодарности: 15

Профиль | Отправить PM | Цитировать


Оказалось не всё так просто...
К примеру, ссылка:
Код: Выделить весь код
http://zigfreed.ru/Sv2/62.m3u8
в реальности udp поток
Код: Выделить весь код
http://85.14.32.3:8800/udp/239.10.10.130:5000
и что в браузере, что скриптом идёт бесконечное скачивание потока...
Как такие короткие ссылки отличить от других, непонятно...

Отправлено: 20:29, 13-09-2020 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - [решено] Расшифровка коротких ссылок

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Расшифровка символа Latinyanin Хочу все знать 3 19-03-2017 11:53
Прочее - [решено] Не корректное или тяжкое открытие ссылок и переходов внутри ссылок в браузерах Илья_Рудоманенко@vk Сетевые технологии 10 16-12-2015 08:05
Разное - Расшифровка Cian2000 Программирование и базы данных 0 18-09-2013 11:27
[решено] Где посмотреть список свойств ссылок (обычных ссылок интернета)? evg64 AutoIt 4 13-09-2009 13:41
Расшифровка clop1000 Хочу все знать 4 27-11-2008 09:38




 
Переход