
инструмент разведки, который находит конфиденциальные данные на скриншотах, загруженных на prnt.sc
Инструмент Shotlooter разработан для поиска конфиденциальных данных на скриншотах, которые загружаются на https://prnt.sc/ (через программное обеспечение LightShot), применяя методы OCR и обработки изображений.
+-------------------+
IMAGE FILE |#!/usr/bin/python |
+--------------------+ | +----->SENSITIVE
|prnt.sc/sjgmm5 | |Search for: |
+--------------------+ | |
| _ | CONVERTS STRING |sensitive keywords |
| .-.-.=\- | +-------+ +------------+ | |
| (_)=='(_) | | | | | |high entropy |
| .._\ +----->+ OCR +---->+ TEXTTEXTT +----->+ |
| (o)(o) | | | | | |credit card pattern+----->NOT SENSITIVE
| TEXTTEXTTEX | +-------+ +------------+ | |
| | +-------------------+
+--------------+------+
| +-----------------------+
v |#!/usr/bin/python |
SMALLER IMAGES | +------>SENSITIVE
+-------------+ +------------+ |Image processing: |
| _ | | .._\ | | |
| .-.-.=\- | | (o)(o) +-->+ Does it contain: |
| (_)=='(_) | | | | ~~O |
+-------------+ +------------+ | /\, |
| -|~(*) +------>NOT SENSITIVE
| (*) |
+-----------------------+
output.Для работы Shotlooter требуется Python3, pip3. Протестировано на macOS и Debian-подобных Linux-системах.
Установка зависимостей для macOS: brew install tesseract
Установка зависимостей для Debian-подобных Linux: sudo apt install libsm6 libxext6 libxrender-dev tesseract-ocr -y
Клонируйте репозиторий:
git clone https://github.com/utkusen/shotlooter.git
Перейдите в папку
cd shotlooter
Установите необходимые библиотеки
pip3 install -r requirements.txt
Базовое использование: python3 shotlooter.py --code PRNT.SC_ID
Инструмент ищет совпадения по ключевым словам (находятся в keywords.txt), строки с высокой энтропией и номера кредитных карт. Вы можете найти идентификатор, загрузив изображение на https://prnt.sc/. Например: python3 shotlooter.py --code sjgmm5.
Он будет проверять идентификаторы, увеличивая их один за другим:
sjgmm6
sjgmm7
sjgmm8
sjgmm9
sjgmma
sjgmmb
...
Поиск изображений: python3 shotlooter.py --code sjgmm5 --imagedir ПУТЬ_К_ПАПКЕ_С_ИЗОБРАЖЕНИЯМИ
Будет выполнен поиск, включающий базовое использование, а также поиск заданных маленьких изображений внутри больших скриншотов. Если вы планируете использовать эту функцию, поместите свои маленькие изображения в папку img.
Исключение поиска: Вы можете исключить любой тип поиска, указав соответствующий аргумент: --no-cc, --no-entropy, --no-keyword
Например: python3 shotlooter.py --code sjgmm5 --no-entropy. Shotlooter пропустит проверку строк с высокой энтропией.
Shotlooter имеет высокий уровень ложных срабатываний для поиска строк с высокой энтропией и номеров кредитных карт. На самом деле это не ложные срабатывания, но искомые объекты могут оказаться не теми, что вы ищете. Инструмент обнаруживает строки с высокой энтропией, чтобы поймать ключи API, приватные ключи и т.д. Однако любая нечувствительная случайная строка также будет иметь высокую энтропию, и Shotlooter обнаружит её. То же самое касается номеров кредитных карт.
Если вы не хотите иметь дело с ложными срабатываниями, исключите поиск энтропии и кредитных карт.
Я запускал Shotlooter в течение двух недель и обнаружил более 300 изображений, содержащих различные конфиденциальные данные. Ниже приведены находки, которые встречались чаще других:
Содержат полезные идентификаторы сессий, токены доступа и т.д.
Скриншоты сделаны из консоли облачного сервиса или десктопного клиента.
Мы все знаем, что передавать идентификатор сессии через GET-запрос нехорошо по разным причинам. Это одна из них.
Некоторые люди любят использовать Excel как менеджер паролей.
Биткоин-кошельки позволяют экспортировать ваш приватный ключ, чтобы импортировать его в другое место. Но если вы опубликуете скриншот своего приватного ключа, весь ваш кошелёк может быть скомпрометирован.
