Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
TrojanSourceFinder — 🔎 Помогает найти уязвимость Trojan Source в коде 👀 . Полезно для проверки кода в проекте с несколькими соавторами (CI/CD). | Kitploit
Инструменты/GitHubGitHub/ariary/trojansourcefinder
Статический анализСканеры уязвимостейАнализ КодаБезопасность Цепочки Поставок
GitHubariary/trojansourcefinder

TrojanSourceFinder

🔎 Помогает найти уязвимость Trojan Source в коде 👀 . Полезно для проверки кода в проекте с несколькими соавторами (CI/CD).

Репозиторий
4717122 лет назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

TrojanSourceFinder

TrojanSourceFinder помогает разработчикам обнаруживать уязвимость «Trojan Source» в исходном коде.

Уязвимость Trojan Source позволяет злоумышленнику сделать вредоносный код внешне безобидным. В целом, атакующий пытается обмануть, выдавая свой код за комментарий (визуально). Это серьёзная угроза, так как затрагивает многие языки. Проекты с несколькими «ненадёжными» источниками могут быть подвержены риску.

Обнаружить зло 🔎 · Отследить зло 👀 · Trojan Source ❓

Установка

С помощью go

> Через go install

root@kitploit:~
go install github.com/ariary/TrojanSourceFinder/cmd/tsfinder@latest

Убедитесь, что $GOPATH находится в вашем $PATH.

> Из исходного кода

root@kitploit:~
git clone https://github.com/ariary/TrojanSourceFinder
cd TrojanSourceFinder
make before.build
make build.tsfinder

Если команда make build.tsfinder не удалась, попробуйте:

root@kitploit:~
env GOOS=target-OS GOARCH=target-architecture
go build -o tsfinder cmd/main.go

С помощью curl

> Из релиза

root@kitploit:~
curl -lO -L https://github.com/ariary/TrojanSourceFinder/releases/latest/download/tsfinder && chmod +x tsfinder

Обнаружение Trojan Source

> Помощь в обнаружении Trojan Source для ручного ревью кода или в конвейерах CI/CD (двунаправленные символы Unicode)

Для обнаружения Trojan Source в файле или директории <путь>:

root@kitploit:~
tsfinder [путь]

Обнаружение только в текстовых файлах

> Файлы исходного кода, как правило, текстовые. Исключение бинарников из сканирования может помочь отсеять ложные срабатывания

root@kitploit:~
tsfinder -t [путь]

Добавьте -v, чтобы увидеть, какие файлы были пропущены при сканировании.

Детальнее (Гомоглифы)

Trojan Source — не единственная угроза. Другая — «Гомоглифы». (Что это?)

tsfinder помогает их обнаруживать с помощью команды homoglyph:

root@kitploit:~
tsfinder homoglyph [имя_файла] [флаги]

Вы можете увидеть, есть ли родственное слово (т.е. слово с тем же «скелетом») для найденных гомоглифов в путь, используя флаг --sibling:

root@kitploit:~
tsfinder homoglyph [имя_файла] --sibling [путь] 

Функциональность в разработке, в основном зависит от других проектов

Визуализация Trojan Source

> Визуализация того, как код на самом деле интерпретируется машинами/компиляторами

tsfinder намеренно не очень многословен. По умолчанию он выводит только информацию о том, был ли обнаружен код Trojan Source. Чтобы получить больше информации и визуализировать опасные строки, добавьте флаг -v.

Чтобы лучше видеть, где находятся Trojan Source, вы можете включить цветной вывод с помощью флага -c (также полезно при сканировании директории):

root@kitploit:~
tsfinder -c -v <директория>

Демо

demo

Гомоглифы

demo

Альтернатива

Как отметил @ioah86 здесь, Trojan Source также можно обнаружить с помощью однострочника через grep.

Основное отличие — формат вывода и код возврата (tsfinder завершается с кодом 0, если Trojan Source не найден, и 1 в противном случае; для grep — наоборот).

Также этот однострочник не решает проблему гомоглифов.

Цельtsfindergrep однострочник
Сканировать все файлы + показать строкиtsfinder -v .grep -arE $'(\u2066|\u2067|\u2068|\u202A|\u202B|\u202D|\u202E|\u202C|\u2069|\u200E|\u200F|\u061C|\u2066|\u2067|\u2068)'
Сканировать только человекочитаемые файлыtsfinder -t .grep -IrE $'(\u2066|\u2067|\u2068|\u202A|\u202B|\u202D|\u202E|\u202C|\u2069|\u200E|\u200F|\u061C|\u2066|\u2067|\u2068)'
Выход с кодом 1 при обнаружениипо умолчанию[однострочник] && exit 1 || exit 0
Скачать инструмент