с использованием сканирования NMAP и кода Python. Я хочу сохранить результат сканирования в моем sql.открытые порты, состояние и работающие службы извлекаются из результата.Но я также хочу извлечь операционную систему (ОС).как это сделать?параметры, используемые при сканировании: -A -sV.Мне не нужно запускать код из терминала.так что -O невозможно, так как для этого требуются предварительные права суперпользователя.
import nmap
nmScan=nmap.PortScanner()
host='172.27.20.139'
result=nmScan.scan(hosts=host, arguments='-oN pooja.txt -A -sC -sV -F')
print('Host : %s (%s)' % (host, nmScan[host].hostname()))
print('State : %s' % nmScan[host].state())
for proto in nmScan[host].all_protocols():
print('----------')
print('Protocol : %s' % proto)
lport = nmScan[host][proto].keys()
for port in lport:
thisDict = nmScan[host][proto][port]
print ('port : %s\t\tstate : %s\t\tService Name:%s\t\tService Product:%s\tVersion%s'% (port, nmScan[host][proto][port]['state'],thisDict['name'],thisDict['product'] ,thisDict['version']))
print('--------------------------------------------------------')
print(result)
Я хочу извлечь результаты для результатов.фактический результат сканирования отображается в конце печати (результат).Приведенные выше результаты извлекаются только из этого результата.
выводится на экран. Вывод