Около месяца назад это была одна из тех ночей, когда внутри вас просыпается бессонный программист, и вы просто знаете, что произойдет что-то хорошее. Той ночью триггер наткнулся на публичный список, в котором были учетные данные для входа на сайт WordPress. Что за *, верно? Я подумал, что это может быть просто единичный случай; кто стал бы размещать конфиденциальную информацию в публичных Gists, зная, что они... Э-э... публичные?

Но.. бессонный программист уже проснулся и начал рисовать план атаки!

Так родился GISTBOT:

GISTBOT — это умный бот, который просматривает ленту GitHub Gist и дает вам возможность находить интересующие вас репозитории в режиме реального времени.

Исходя из моего опыта создания других приложений poc (Proof of Concept), вам нужно быть эффективным. Это означает, что вам не нужно добавлять все эти причудливые функции, которые вы имеете в виду, да, я знаю, что это сложно, вам просто нужен самый простой тестовый пример, который, конечно же, поможет вам доказать свою концепцию.

В моем случае это был Crawler, который использовал бы GitHub API, который, кстати, позволяет 5000 вызовов на IP/час для извлечения и анализа общедоступных Gists. Очень важные функции для GISTBOT заключались в том, чтобы иметь возможность выбирать тип файла сути и предоставлять умный способ фильтрации всех этих данных.

Фильтровать данные? Не знаю, как вам, но первое, что приходит мне на ум, это Регулярные выражения. Сканер настроен на чтение всех регулярных выражений из файла и проверку их на Gists. Так что `дотроньтесь до regex.txt` и начните игру :)

Осталось только воображение!

Насколько замечательным может быть этот инструмент, на самом деле зависит от пользователя, но использование его прямо там, безусловно, имеет большой потенциал.

tl;tr

Он работает уже почти месяц с 7 интересными шаблонами регулярных выражений и возвращает ~1500 совпадений. Там, конечно, много ложных срабатываний, но это просто не имеет значения, так как вы также получаете много хороших вещей :)

Я очень впечатлен результатами, но в то же время разочарован коллегами-программистами, которые, несмотря на все предупреждения о размещении конфиденциальной информации в общественных местах, по-прежнему предпочитают их игнорировать.

P.S. Хотя основной целью этого приложения является «Война серых шляп», вы также можете использовать его, чтобы следить за другими вещами, например, скажем, за использованием плагина для определенного языка программирования, который вы используете.