/// <summary> /// Bu fonksiyon yeni bir Tarama oluşturur. /// This function creates a new Scan. /// </summary> /// <param name="manager">NexposeManager Instance</param> /// <param name="json">String in valid JSON type</param> /// <returns></returns> public ScanCreateResponse CreateScan(NexposeManager manager, string id, ScanCreate scanCreate) { try { string json = JsonConvert.SerializeObject(scanCreate); string jsonResponse = manager.CreateScan(id, json); ScanCreateResponse scanCreateResponse = new ScanCreateResponse(); scanCreateResponse = JsonConvert.DeserializeObject <ScanCreateResponse>(jsonResponse); return(scanCreateResponse); } catch (Exception ex) { throw ex; } }
/// <summary> /// Bu fonksiyon yeni bir Tarama oluşturur ve oluşturulan ID'yi ekrana yazar. /// This function creates a new Scan and created ID writes to the screen. /// </summary> /// <param name="manager"></param> public static void CreateScan(W3afManager manager) { string currentDir = Directory.GetParent(Directory.GetCurrentDirectory()).Parent.FullName; try { //Profile Name is scan settings namely it is policy. Profile Adı tarama ayarlarıdır yani policydir. string scanProfileName = SelectProfile(); Console.WriteLine(scanProfileName); //Web Site Login Page, Login username and Login Password. EditPolicyLoginInformation(currentDir, scanProfileName); string scanProfile = System.IO.File.ReadAllText(currentDir + "\\Model\\Policys\\" + scanProfileName); string targetURL = SelectTargetURL(); ScanCreate scanCreate = new ScanCreate(scanProfile, targetURL); ScanController = new ScanController(); string json = JsonConvert.SerializeObject(scanCreate); string responseJson = ScanController.CreateScan(manager, json); if (responseJson == null) { Console.WriteLine("Sistemde herhangi bir tarama mevcut ise öncelikle onu siliniz."); return; } ScanCreateResponse scanCreateResponse = JsonConvert.DeserializeObject <ScanCreateResponse>(responseJson); Console.WriteLine("Oluşturulan Tarama ID: " + scanCreateResponse.ID); } catch (Exception ex) { Console.WriteLine("ScanView::CreateScan Exception: " + ex.Message); } }
/// <summary> /// Bu fonksiyon yeni bir Tarama oluşturur ve oluşturulan ID'yi ekrana yazar. /// This function creates a new Scan and created ID writes to the screen. /// </summary> /// <param name="manager"></param> public static void CreateScan(NexposeManager manager) { ScanController = new ScanController(); try { string selected = ""; do { Console.Write("Yeni Varlık Oluşturmak İstiyor musunuz? (E/H)"); selected = Console.ReadLine(); string responseId = ""; if (selected.ToUpper() == "E") { //Profile Name is scan settings namely it is policy. Profile Adı tarama ayarlarıdır yani policydir. Console.WriteLine("Varlık Adı Giriniz."); string siteName = Console.ReadLine(); string scanProfileName = ListAndSelectTemplate(manager); string targetURL = SelectTargetURL(); SiteCreateModel siteCreate = new SiteCreateModel(siteName, targetURL, scanProfileName); responseId = ScanController.CreateSite(manager, siteCreate); } else if (selected.ToUpper() == "H") { //Varlıkları Listele SitesModel sitesModel = ScanController.GetSites(manager); int counter = 1; if (sitesModel.Resources.Length == 0) { Console.WriteLine("Herhangi bir varlık bulunmamaktadır. Öncelikle yeni bir varlık oluşturunuz."); break; } foreach (var item in sitesModel.Resources) { Console.WriteLine(counter + ") " + item.Name); counter += 1; } Console.WriteLine("Site Numarasını giriniz: "); int id = Convert.ToInt32(Console.ReadLine()); ScanCreate scanCreate = new ScanCreate(null, sitesModel.Resources[id - 1].ScanTemplate); ScanCreateResponse scanCreateResponse = ScanController.CreateScan(manager, id.ToString(), scanCreate); if (scanCreateResponse.Id > 0) { Console.WriteLine("Tarama Oluşturuldu. Tarama ID: " + scanCreateResponse.Id); break; } } else { Console.WriteLine("Geçersiz Seçim"); } } while (selected != "E" & selected != "H"); //ScanCreate scanCreate = new ScanCreate(scanProfileName, targetURL); //string json = JsonConvert.SerializeObject(scanCreate); //if (responseJson == null) //{ // Console.WriteLine("Sistemde herhangi bir tarama mevcut ise öncelikle onu siliniz."); // return; //} //ScanCreateResponse scanCreateResponse = JsonConvert.DeserializeObject<ScanCreateResponse>(responseJson); //Console.WriteLine("Oluşturulan Tarama ID: " + scanCreateResponse.ID); } catch (Exception ex) { Console.WriteLine("ScanView::CreateScan Exception: " + ex.Message); } }