public List <RecordDnsPoison> OnLoadTemplateData(TemplatePluginData pluginData) { List <RecordDnsPoison> poisoningRecords = null; if (pluginData == null) { return(null); } // Deserialize plugin data var stream = new MemoryStream(); stream.Write(pluginData.PluginConfigurationItems, 0, pluginData.PluginConfigurationItems.Length); stream.Seek(0, SeekOrigin.Begin); var formatter = new BinaryFormatter(); poisoningRecords = (List <RecordDnsPoison>)formatter.Deserialize(stream); // Replace place holders by current configuration values poisoningRecords.ForEach(elem => { if (elem.IpAddress == MinaryLib.DSL.Config.CONSTANT_LOCAL_IP) { elem.IpAddress = this.plugin.Config.HostApplication.CurrentIP; } }); return(poisoningRecords); }
/// <summary> /// /// </summary> /// <returns></returns> public TemplatePluginData OnGetTemplateData(BindingList <RequestRedirectRecord> requestRedirectRecords) { var templateData = new TemplatePluginData(); var genericObjectList = new List <RequestRedirectRecord>(); // Create new record list foreach (RequestRedirectRecord tmpRecord in requestRedirectRecords) { var tmpRecord2 = new RequestRedirectRecord() { RedirectType = tmpRecord.RedirectType, RedirectDescription = tmpRecord.RedirectDescription, RequestedHostRegex = tmpRecord.RequestedHostRegex, RequestedPathRegex = tmpRecord.RequestedPathRegex, ReplacementResource = tmpRecord.ReplacementResource }; genericObjectList.Add(tmpRecord2); } // Serialize the list var stream = new MemoryStream(); var formatter = new BinaryFormatter(); formatter.Serialize(stream, genericObjectList); stream.Seek(0, SeekOrigin.Begin); // Assign plugin data to "Plugin Template DTO" templateData.PluginConfigurationItems = stream.ToArray(); return(templateData); }
public TemplatePluginData OnGetTemplateData(BindingList <RecordDnsPoison> dnsPoisonRecords) { var templateData = new TemplatePluginData(); var genericObjectList = new List <RecordDnsPoison>(); // Where necessary replace current configuration parameter // with placeholder values foreach (RecordDnsPoison tmpRecord in dnsPoisonRecords) { var realRecord = new RecordDnsPoison(tmpRecord.HostName, tmpRecord.IpAddress, tmpRecord.ResponseType, tmpRecord.CName, tmpRecord.TTL, tmpRecord.MustMatch); if (tmpRecord.IpAddress == this.plugin.Config.HostApplication.CurrentIP) { realRecord.IpAddress = MinaryLib.DSL.Config.CONSTANT_LOCAL_IP; } genericObjectList.Add(realRecord); } // Serialize the list var stream = new MemoryStream(); var formatter = new BinaryFormatter(); formatter.Serialize(stream, genericObjectList); stream.Seek(0, SeekOrigin.Begin); // Assign plugin data to "Plugin Template DTO" templateData.PluginConfigurationItems = stream.ToArray(); return(templateData); }
private void BT_OnGetTemplateData_Click(object sender, EventArgs e) { foreach (var key in this.pluginDict.Keys) { TemplatePluginData templData = this.pluginDict[key].IPlugin.OnGetTemplateData(); } }
public void OnLoadTemplateData(TemplatePluginData pluginData) { if (this.InvokeRequired) { this.BeginInvoke(new OnLoadTemplateDataDelegate(this.OnLoadTemplateData), new object[] { pluginData }); return; } }
public void OnLoadTemplateData(TemplatePluginData templateData) { if (this.InvokeRequired) { this.BeginInvoke(new OnLoadTemplateDataDelegate(this.OnLoadTemplateData), new object[] { templateData }); return; } this.ClearRecordList(); this.Refresh(); }
public void OnLoadTemplateData(TemplatePluginData templateData) { if (this.InvokeRequired) { this.BeginInvoke(new OnLoadTemplateDataDelegate(this.OnLoadTemplateData), new object[] { templateData }); return; } this.infrastructureLayer.OnReset(); this.dataBatch.Clear(); this.Refresh(); }
public TemplatePluginData OnGetTemplateData() { TemplatePluginData retVal = new TemplatePluginData(); if (this.InvokeRequired) { this.BeginInvoke(new OnGetTemplateDataDelegate(this.OnGetTemplateData), new object[] { }); return(retVal); } return(retVal); }
public List <SystemPattern> OnLoadTemplateData(TemplatePluginData templateData) { List <SystemPattern> systemPatternRecords; // Deserialize the pattern data MemoryStream stream = new MemoryStream(); stream.Write(templateData.PluginDataSearchPatternItems, 0, templateData.PluginDataSearchPatternItems.Length); stream.Seek(0, SeekOrigin.Begin); BinaryFormatter formatter = new BinaryFormatter(); systemPatternRecords = (List <SystemPattern>)formatter.Deserialize(stream); return(systemPatternRecords); }
public TemplatePluginData OnGetTemplateData() { if (this.InvokeRequired) { this.BeginInvoke(new OnGetTemplateDataDelegate(this.OnGetTemplateData), new object[] { }); return(null); } TemplatePluginData newTemplateData = new TemplatePluginData(); // Configuration items newTemplateData.PluginConfigurationItems = this.infrastructureLayer.OnGetTemplateData(this.systemRecords); // Pattern items newTemplateData.PluginDataSearchPatternItems = this.manageSystemsPresentationLayer.OnGetTemplateData(); return(newTemplateData); }
public void OnLoadTemplateData(TemplatePluginData templateData) { if (this.InvokeRequired) { this.BeginInvoke(new OnLoadTemplateDataDelegate(this.OnLoadTemplateData), new object[] { templateData }); return; } // Configuration items this.systemRecords.Clear(); List <SystemRecord> loadedSystemRecords = this.infrastructureLayer.OnLoadTemplateData(templateData); loadedSystemRecords.ForEach(elem => this.systemRecords.Add(elem)); // Pattern items this.manageSystemsPresentationLayer.OnLoadTemplateData(templateData); this.Refresh(); }
public void OnLoadTemplateData(TemplatePluginData templateData) { if (this.InvokeRequired) { this.BeginInvoke(new OnLoadTemplateDataDelegate(this.OnLoadTemplateData), new object[] { templateData }); return; } this.injectFileRecords.Clear(); List <InjectFileRecord> tmpInjectFileRecords = this.infrastructureLayer.OnLoadTemplateData(templateData); if (tmpInjectFileRecords != null && tmpInjectFileRecords.Count > 0) { tmpInjectFileRecords.ToList().ForEach(elem => this.injectFileRecords.Add(elem)); } this.Refresh(); }
public void OnLoadTemplateData(TemplatePluginData templateData) { if (this.InvokeRequired) { this.BeginInvoke(new OnLoadTemplateDataDelegate(this.OnLoadTemplateData), new object[] { templateData }); return; } this.dnsPoisonRecords.Clear(); List <RecordDnsPoison> poisoningRecords = this.infrastructureLayer.OnLoadTemplateData(templateData); if (poisoningRecords?.Count > 0 == true) { poisoningRecords.ToList().ForEach(elem => this.dnsPoisonRecords.Add(elem)); } this.Refresh(); }
public List <RecordHttpSearch> OnLoadTemplateData(TemplatePluginData pluginData) { if (pluginData == null) { return(null); } var httpSearchRecords = new List <RecordHttpSearch>(); // Deserialize plugin data MemoryStream stream = new MemoryStream(); stream.Write(pluginData.PluginConfigurationItems, 0, pluginData.PluginConfigurationItems.Length); stream.Seek(0, SeekOrigin.Begin); BinaryFormatter formatter = new BinaryFormatter(); httpSearchRecords = (List <RecordHttpSearch>)formatter.Deserialize(stream); return(httpSearchRecords); }
/// <summary> /// /// </summary> /// <param name="pluginData"></param> public List <FirewallRuleRecord> OnLoadTemplateData(TemplatePluginData pluginData) { List <FirewallRuleRecord> poisoningRecords = null; if (pluginData == null) { return(null); } // Deserialize plugin data MemoryStream stream = new MemoryStream(); stream.Write(pluginData.PluginConfigurationItems, 0, pluginData.PluginConfigurationItems.Length); stream.Seek(0, SeekOrigin.Begin); BinaryFormatter formatter = new BinaryFormatter(); poisoningRecords = (List <FirewallRuleRecord>)formatter.Deserialize(stream); return(poisoningRecords); }
/// <summary> /// /// </summary> /// <param name="InjectCodeRecords"></param> /// <returns></returns> public TemplatePluginData OnGetTemplateData(BindingList <InjectCodeRecord> InjectCodeRecords) { var templateData = new TemplatePluginData(); var genericObjectList = new List <InjectCodeRecord>(); foreach (InjectCodeRecord tmpRecord in InjectCodeRecords) { genericObjectList.Add(new InjectCodeRecord(tmpRecord.RequestedScheme, tmpRecord.RequestedHostRegex, tmpRecord.RequestedPathRegex, tmpRecord.InjectionCodeFile, tmpRecord.Tag, tmpRecord.Position)); } // Serialize the list var stream = new MemoryStream(); var formatter = new BinaryFormatter(); formatter.Serialize(stream, genericObjectList); stream.Seek(0, SeekOrigin.Begin); // Assign plugin data to "Plugin Template DTO" templateData.PluginConfigurationItems = stream.ToArray(); return(templateData); }
/// <summary> /// /// </summary> /// <returns></returns> public TemplatePluginData OnGetTemplateData(BindingList <SslStripRecord> sslStripRules) { var templateData = new TemplatePluginData(); var genericObjectList = new List <SslStripRecord>(); // Replace current configuration parameter with placeholder values foreach (SslStripRecord tmpRecord in sslStripRules) { genericObjectList.Add(new SslStripRecord(tmpRecord.HostName, tmpRecord.ContentType)); } // Serialize the list var stream = new MemoryStream(); var formatter = new BinaryFormatter(); formatter.Serialize(stream, genericObjectList); stream.Seek(0, SeekOrigin.Begin); // Assign plugin data to "Plugin Template DTO" templateData.PluginConfigurationItems = stream.ToArray(); return(templateData); }
public TemplatePluginData OnGetTemplateData(BindingList <RecordHttpSearch> httpSearchPatternRecords) { var templateData = new TemplatePluginData(); var genericObjectList = new List <RecordHttpSearch>(); // Replace current configuration parameter with placeholder values foreach (RecordHttpSearch tmpRecord in httpSearchPatternRecords) { genericObjectList.Add(new RecordHttpSearch(tmpRecord.Method, tmpRecord.HostRegex, tmpRecord.PathRegex, tmpRecord.DataRegex)); } // Serialize the list MemoryStream stream = new MemoryStream(); BinaryFormatter formatter = new BinaryFormatter(); formatter.Serialize(stream, genericObjectList); stream.Seek(0, SeekOrigin.Begin); // Assign plugin data to "Plugin Template DTO" templateData.PluginConfigurationItems = stream.ToArray(); return(templateData); }
/// <summary> /// /// </summary> /// <returns></returns> public TemplatePluginData OnGetTemplateData(BindingList <FirewallRuleRecord> firewallRules) { TemplatePluginData templateData = new TemplatePluginData(); List <FirewallRuleRecord> genericObjectList = new List <FirewallRuleRecord>(); // Replace current configuration parameter with placeholder values foreach (FirewallRuleRecord tmpRecord in firewallRules) { genericObjectList.Add(new FirewallRuleRecord(tmpRecord.Protocol, tmpRecord.SrcIp, tmpRecord.SrcPortLower, tmpRecord.SrcPortUpper, tmpRecord.DstIp, tmpRecord.DstPortLower, tmpRecord.DstPortUpper)); } // Serialize the list MemoryStream stream = new MemoryStream(); BinaryFormatter formatter = new BinaryFormatter(); formatter.Serialize(stream, genericObjectList); stream.Seek(0, SeekOrigin.Begin); // Assign plugin data to "Plugin Template DTO" templateData.PluginConfigurationItems = stream.ToArray(); return(templateData); }
/// <summary> /// /// </summary> /// <param name="pluginName"></param> /// <param name="pluginData"></param> public Plugin(string pluginName, TemplatePluginData pluginData) { this.Name = pluginName; this.Data = pluginData; }
public List <SystemPattern> OnLoadTemplateData(TemplatePluginData templateData) { return(this.infrastructureLayer.OnLoadTemplateData(templateData)); }
public List <SystemRecord> OnLoadTemplateData(TemplatePluginData pluginData) { List <SystemRecord> applicatoinPatternRecords = new List <SystemRecord>(); return(applicatoinPatternRecords); }
public void LoadPluginData(string tabPageName, TemplatePluginData pluginData) { LogCons.Inst.Write(LogLevel.Info, $"Calls interface: LoadPluginData() \"{tabPageName}\""); Minary.DataTypes.MinaryExtension realPluginObj = this.minaryMain.PluginHandler.TabPagesCatalog[tabPageName]; realPluginObj.PluginObject.OnLoadTemplateData(pluginData); }
/// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Bt_Save_Click(object sender, EventArgs e) { // Create and populate temlate object var newTemplateData = new MinaryTemplateData(); newTemplateData.TemplateConfig.Name = this.tb_TemplateName.Text; newTemplateData.TemplateConfig.Description = this.tb_TemplateDescription.Text; newTemplateData.TemplateConfig.Reference = this.tb_TemplateReferenceLink.Text; newTemplateData.TemplateConfig.Author = this.tb_AuthorName.Text; newTemplateData.TemplateConfig.Version = this.tb_Version.Text; // Configure attack settings int tmpNumberSelectedTargetSystems = -1; int.TryParse(this.tb_MaxNoTargetSystems.Text, out tmpNumberSelectedTargetSystems); newTemplateData.AttackConfig.NumberSelectedTargetSystems = tmpNumberSelectedTargetSystems; newTemplateData.AttackConfig.ScanNetwork = this.cb_ArpScan.Checked ? 1 : 0; newTemplateData.AttackConfig.StartAttack = this.cb_StartAttackingTargets.Checked ? 1 : 0; newTemplateData.AttackConfig.IsAdvancedScan = this.rb_GuiAdvanced.Checked ? 1 : 0; newTemplateData.AttackConfig.IsDebuggingOn = this.rb_DebuggingOn.Checked ? 1 : 0; try { this.TemplateParametersAreValid(newTemplateData); } catch (Exception ex) { MessageDialog.Inst.ShowError(string.Empty, ex.Message, this); return; } // Plugin data foreach (TabPage tmpTabPage in this.minaryMain.MinaryTabPageHandler.VisibleTabPages) { Minary.DataTypes.MinaryExtension tmpExtension = this.minaryMain.PluginHandler.TabPagesCatalog[tmpTabPage.Text]; TemplatePluginData tmpPluginData = tmpExtension.PluginObject.OnGetTemplateData(); newTemplateData.Plugins.Add(new Plugin(tmpTabPage.Text, tmpPluginData)); } // Show save file dialog this.sfd_TemplateFile.InitialDirectory = Path.Combine(Directory.GetCurrentDirectory(), Minary.Config.CustomTemplatesDir); this.sfd_TemplateFile.Filter = $"Minary template files|*.{Minary.Config.MinaryFileExtension}"; this.sfd_TemplateFile.Title = $"Export current configuration to a .{Minary.Config.MinaryFileExtension} file"; this.sfd_TemplateFile.AddExtension = true; DialogResult dialogResult = this.sfd_TemplateFile.ShowDialog(); if (dialogResult == DialogResult.Cancel) { return; } else if (string.IsNullOrEmpty(this.sfd_TemplateFile.FileName)) { var message = "You didn't define an output file"; MessageDialog.Inst.ShowWarning(string.Empty, message, this); return; } // Save template to file system try { this.SaveTemplateToFile(newTemplateData); this.minaryMain.TemplateName.Text = newTemplateData.TemplateConfig.Name; } catch (Exception ex) { LogCons.Inst.Write(LogLevel.Error, $"Error occurred while saving template : {ex.Message}"); string message = $"Error occurred while saving template : {ex.Message}"; MessageDialog.Inst.ShowWarning(string.Empty, message, this); } }
public void OnLoadTemplateData(TemplatePluginData templateData) { List <SystemPattern> applicationPatterns = this.taskLayer.OnLoadTemplateData(templateData); this.LoadTemplateSystemPatterns(applicationPatterns); }