Назад | Перейти на главную страницу

Обмен информацией Powershell и NMAP

Я работаю над проектом, в котором я хотел бы выполнить документацию хоста для множества элементов. Часть этих элементов будет получена из Powershell, а остальные - из NMAP. Что касается части Powershell, я пытаюсь создать что-то самодельное и похожее на SYDI-сервер проект. Вместо WMI он будет использовать Powershell и позволит использовать гораздо более крупный и простой метод получения различных результатов с удаленных машин. Кроме того, проект SYDI-Server некоторое время не обновлялся. Часть NMAP будет использоваться для выполнения одного или двух сканирования на удаленном хосте и возврата результатов, чтобы Powershell мог использовать или использовать их и добавлять их в создаваемый окончательный отчет. Идея аналогична тому, что отчет представляет собой документ MS Word, который выводится из Powershell и содержит все элементы, необходимые для документации хоста.

Все это говорит о том, есть ли способ обмена данными или их пересылки из Powershell в NMAP и обратно? Есть ли способ использовать или анализировать результаты NMAP в Powershell для дальнейших манипуляций?

Результаты NMAP можно довольно легко прочитать в PowerShell. NMap имеет возможность выводить результаты в формате XML. Это контролируется -oX вариант. PowerShell любит XML.

nmap [options] -oX results.xml [targets]

Прочитать это легко:

[xml]$NmapResults = Get-Content results.xml

Это создаст структуру данных в $ NmapResults, которую вы можете перемещать, чтобы получить то, что вы хотите.

О том, как получить доступ к отдельным элементам XML, я расскажу об этом в другом ответе ServerFault:

https://serverfault.com/a/154094/3038