mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-29 08:01:00 +00:00
96 lines
6.1 KiB
Markdown
96 lines
6.1 KiB
Markdown
# Обробники файлів та URL-схем в macOS
|
||
|
||
{% hint style="success" %}
|
||
Вивчайте та практикуйте хакінг AWS: <img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**Навчання AWS Red Team Expert (ARTE) від HackTricks**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||
Вивчайте та практикуйте хакінг GCP: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**Навчання GCP Red Team Expert (GRTE) від HackTricks**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||
|
||
<details>
|
||
|
||
<summary>Підтримайте HackTricks</summary>
|
||
|
||
* Перевірте [**плани підписки**](https://github.com/sponsors/carlospolop)!
|
||
* **Приєднуйтесь до** 💬 [**групи Discord**](https://discord.gg/hRep4RUj7f) або [**групи Telegram**](https://t.me/peass) або **слідкуйте** за нами на **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||
* **Поширюйте хакінг-прийоми, надсилаючи PR до** [**HackTricks**](https://github.com/carlospolop/hacktricks) та [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) репозиторіїв на GitHub.
|
||
|
||
</details>
|
||
{% endhint %}
|
||
|
||
## База даних LaunchServices
|
||
|
||
Це база даних всіх встановлених додатків в macOS, до якої можна звертатися для отримання інформації про кожен встановлений додаток, таку як підтримувані ним URL-схеми та типи MIME.
|
||
|
||
Можливо вивести цю базу даних за допомогою:
|
||
|
||
{% code overflow="wrap" %}
|
||
```
|
||
/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -dump
|
||
```
|
||
{% endcode %}
|
||
|
||
Або використовуючи інструмент [**lsdtrip**](https://newosxbook.com/tools/lsdtrip.html).
|
||
|
||
**`/usr/libexec/lsd`** - це мозок бази даних. Він надає **кілька служб XPC**, таких як `.lsd.installation`, `.lsd.open`, `.lsd.openurl`, та інші. Але він також **вимагає деякі дозволи** для додатків, щоб мати змогу використовувати викладені функціональні можливості XPC, такі як `.launchservices.changedefaulthandler` або `.launchservices.changeurlschemehandler` для зміни типів мультимедійних файлів або схем URL та інші.
|
||
|
||
**`/System/Library/CoreServices/launchservicesd`** претендує на службу `com.apple.coreservices.launchservicesd` і може бути опитаний для отримання інформації про запущені додатки. Його можна опитати за допомогою системного інструменту /**`usr/bin/lsappinfo`** або з [**lsdtrip**](https://newosxbook.com/tools/lsdtrip.html).
|
||
|
||
## Обробники файлів з розширенням та схем URL додатків
|
||
|
||
Наступний рядок може бути корисним для пошуку додатків, які можуть відкривати файли в залежності від розширення:
|
||
```bash
|
||
/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -dump | grep -E "path:|bindings:|name:"
|
||
```
|
||
{% endcode %}
|
||
|
||
Або скористайтеся чимось на зразок [**SwiftDefaultApps**](https://github.com/Lord-Kamina/SwiftDefaultApps):
|
||
```bash
|
||
./swda getSchemes #Get all the available schemes
|
||
./swda getApps #Get all the apps declared
|
||
./swda getUTIs #Get all the UTIs
|
||
./swda getHandler --URL ftp #Get ftp handler
|
||
```
|
||
Ви також можете перевірити розширення, які підтримує додаток, виконавши:
|
||
```
|
||
cd /Applications/Safari.app/Contents
|
||
grep -A3 CFBundleTypeExtensions Info.plist | grep string
|
||
<string>css</string>
|
||
<string>pdf</string>
|
||
<string>webarchive</string>
|
||
<string>webbookmark</string>
|
||
<string>webhistory</string>
|
||
<string>webloc</string>
|
||
<string>download</string>
|
||
<string>safariextz</string>
|
||
<string>gif</string>
|
||
<string>html</string>
|
||
<string>htm</string>
|
||
<string>js</string>
|
||
<string>jpg</string>
|
||
<string>jpeg</string>
|
||
<string>jp2</string>
|
||
<string>txt</string>
|
||
<string>text</string>
|
||
<string>png</string>
|
||
<string>tiff</string>
|
||
<string>tif</string>
|
||
<string>url</string>
|
||
<string>ico</string>
|
||
<string>xhtml</string>
|
||
<string>xht</string>
|
||
<string>xml</string>
|
||
<string>xbl</string>
|
||
<string>svg</string>
|
||
```
|
||
{% hint style="success" %}
|
||
Вивчайте та практикуйте взлом AWS: <img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**Навчання HackTricks AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||
Вивчайте та практикуйте взлом GCP: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**Навчання HackTricks GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||
|
||
<details>
|
||
|
||
<summary>Підтримайте HackTricks</summary>
|
||
|
||
* Перевірте [**плани підписки**](https://github.com/sponsors/carlospolop)!
|
||
* **Приєднуйтесь до** 💬 [**групи Discord**](https://discord.gg/hRep4RUj7f) або [**групи Telegram**](https://t.me/peass) або **слідкуйте** за нами на **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||
* **Поширюйте хакерські трюки, надсилаючи PR до** [**HackTricks**](https://github.com/carlospolop/hacktricks) та [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) репозиторіїв на GitHub.
|
||
|
||
</details>
|
||
{% endhint %}
|