Script Agent is the most powerful feature of ReconNess because with that Script you can parse the Terminal output and then you can connect the Terminal output with the database.
The Script receives two parameters, the output line from the Terminal string lineInput
and the int lineInputCount
with the count line from the Terminal and you need to return an Object RecoNess.Core.Models.ScriptOutput
namespace ReconNess.Core.Models{public class ScriptOutput{public string Subdomain { get; set; }​public string Ip { get; set; }​public bool? Takeover { get; set; }​public bool? IsAlive { get; set; }​public bool? HasHttpOpen { get; set; }​public int? Port { get; set; }​public string Service { get; set; }​public string HttpScreenshotFilePath { get; set; }​public string HttpsScreenshotFilePath { get; set; }​public string HttpDirectory { get; set; }​public string HttpDirectoryMethod { get; set; }​public string HttpDirectoryStatusCode { get; set; }​public string HttpDirectorySize { get; set; }}}​
You can use System.Text.RegularExpressions.Regex
for the regular expression, please be sure to use the entire namespaces, for example.
var match = System.Text.RegularExpressions.Regex.Match(lineInput, @"PING\s(.*?)\s\((.*?)\)");
To know more and see examples about the Script check, Sublist3r, GoBuster, Ping and Nmap Scripts.