Как запустить файл python и сканировать сгенерированные IP-адреса с помощью nmap - PullRequest
1 голос
/ 05 августа 2020

Я написал сценарий python для поиска по shodan, мой код сценария возвращает файл, содержащий список IP-адресов, каждая строка которого содержит один IP-адрес. вот мой код:

import shodan
SHODAN_API="YOUR_SHODAN_API"
api = shodan.Shodan(SHODAN_API)
try:
    # Search Using Shodan
    results = api.search('EXAMPLE')

    # Showing the results
    print 'Results found: %s' % results['total']
    for result in results['matches']:
        print '%s' % result['ip_str']
    ''' following lines could be uncommented due to more information
    Don't Uncomment if you are using scanning methods with the results '''
        #print result['data']
        #print ''
except shodan.APIError, e:
    print 'Error: %s' % e

Мне было интересно, есть ли способ автоматизировать задачу запуска моего кода и последующего сканирования списка IP-адресов внешним скриптом или чем-то, что работает на OSX и Linux?

Ответы [ 2 ]

1 голос
/ 05 августа 2020

Вы можете просто использовать сценарий bash, подобный следующему:

#!/bin/bash
python ShodanSearch.py >> IPResult.txt
cat IPResult.txt | while read line
do
sudo nmap -n -Pn -sV -p 80,8080 -oG - $line >> NResult.txt
done
0 голосов
/ 05 августа 2020

В качестве альтернативы вышеприведенному решению вы также можете выполнить nmap, используя модуль python os для выполнения команд оболочки в вашем python скрипте, или теперь предпочтительный метод - с модулем подпроцесса, лично не использовал последний, но он определенно может делать то, что вы хотите.

...