(Работайте в процессе) Интерактивный инструмент для быстрого поиска и запуска примеров шпаргалки.
Основными мотивами для создания этого проекта являются:
Единственная зависимость этого проекта-Python 3. Это правда, что для фактического запуска примеров чит-шпаргчества необходимо установить задействованные инструменты, но, поскольку он будет слишком навязчивым, сценарий будет просто печатать установленные инструменты в зеленых и непостоянных.
Нет необходимости в установке каких -либо дополнительных инструментов. Я бы порекомендовал, однако, добавить псевдоним, чтобы выполнить его более простым образом:
alias eg="python3 /path/to/eg/repo/app/eg.py"
Сделав это, можно запустить eg keyword как python3 eg.py keyword
$ eg -h
NAME
eg -- Interactive tool to search and run cheat-sheet examples
SYNOPSIS
eg [keyword]
EXAMPLES
# Search for tools related to dns
eg dns
# Directly access nmap examples
eg nmap
# Access the interactive app
eg
Добавьте их в app/tools_info.json . Не забудьте также добавить им несколько ключевых слов, чтобы они были получены при поиске по ключевым словам.
Примеры могут иметь параметры, которые будут запрашивать при выполнении. Например, добавьте параметры, используя двойные вьющиеся скобки:
find . -name {{keyword}}
Поиск инструментов, которые соответствуют ключевому слову DNS:
$ eg dns
Results for dns:
1) nslookup: Query Internet name servers interactively
2) dig: DNS lookup utility
3) dnsrecon: DNS Enumeration and Scanning Tool
4) dnsmap: DNS Network Mapper
Enter tool index (or enter to go back):
Теперь выберите один из инструментов, чтобы перечислить примеры их шпаргалки:
Enter tool index (or enter to go back): 1
Examples for nslookup:
1 - Query A records
nslookup {{RHOST}}
-------
2 - Query NS records
nslookup -type=ns {{RHOST}}
-------
3 - Query MX records
nslookup -type=mx {{RHOST}}
-------
4 - Query all available DNS records
nslookup -type=any {{RHOST}}
-------
Enter index of the example to run (or enter to go back):
Выберите пример для запуска, установите параметры и запустите:
Enter index of the example to run (or enter to go back): 1
nslookup {{RHOST}}
Please set parameters
RHOST: google.com
$ nslookup google.com
Server: 192.168.1.1
Address: 192.168.1.1#53
Non-authoritative answer:
Name: google.com
Address: 172.217.172.46
При поиске по имени инструмента выбор инструмента выполняется автоматически:
$ eg nmap
Examples for nmap:
1 - Aggressive: Standard scripts, OS and versions detection
nmap -A {{RHOST}}
-------
2 - Scan all 65535 ports
nmap -p- {{RHOST}}
-------
Enter index of the example to run (or enter to go back):
Не стесняйтесь добавлять новые примеры шпаргалки в app/tools_info.json который служит чит -шпаргментом DB. Попытка сохранить имена параметров команды согласованными являются ключом, поскольку значения параметров кэшируются и используются в качестве по умолчанию для выполнения других команд во время того же сеанса.
GPL-3.0