From f99e395241b2996834476e9e93ceb46dc7296267 Mon Sep 17 00:00:00 2001 From: pyro57000 Date: Wed, 30 Apr 2025 09:59:50 -0500 Subject: [PATCH] fixed a bug where switching projects wouldn't switch projects. --- pentest_tool/src/cli.rs | 2 +- pentest_tool/src/info_controls.rs | 53 ++++++++++++++++++++++++++++ pentest_tool/src/project_controls.rs | 2 +- 3 files changed, 55 insertions(+), 2 deletions(-) diff --git a/pentest_tool/src/cli.rs b/pentest_tool/src/cli.rs index 0091668..be573b5 100644 --- a/pentest_tool/src/cli.rs +++ b/pentest_tool/src/cli.rs @@ -135,7 +135,7 @@ pub fn run_command(cmd: String, } match cmd.as_str(){ "list projects" | "lp" | "listp" | "list p" => {project_controls::list_projects(&projects); return None}, - "switch project" | "swp" | "switch p" | "switchp" => {project_controls::switch_project(&mut projects.clone()); return None}, + "switch project" | "swp" | "switch p" | "switchp" => {project_controls::switch_project(&mut projects); return None}, "show active project" | "show active" | "sa" | "show a" => {println!("\nclient: {}\n\nproject: {}\n\nbox: {}\n\nproject files: {}\n\nproject notes: {}\n", active_project.customer ,active_project.project_name, active_project.boxname, active_project.files_folder.display(), active_project.notes_folder.display()); return None}, "create new project" | "cnp" | "new project" | "np" => {new_id = new_id + 1; start_pentest::start_pentest(&config_path, &mut projects, new_id, upcoming_files, upcoming_notes, &boxtemplate, password_spray_file); return None}, "save projects" | "sp" | "save" | "s" => {project_controls::save_projects(&projects, &config_path); return None}, diff --git a/pentest_tool/src/info_controls.rs b/pentest_tool/src/info_controls.rs index 849c4c6..0b10a0f 100644 --- a/pentest_tool/src/info_controls.rs +++ b/pentest_tool/src/info_controls.rs @@ -1164,4 +1164,57 @@ pub fn parse_csportscan(project: &Project){ } println!("DONE all files saved to {}", outfile.display()); println!("note if no hosts were found for a protocol their files will be empty."); +} + +/*fn get_scope(general: &PathBuf){ + println!("opening general notes..."); + let mut working = general.clone(); + working.push("general.md"); + let working_read = fs::read_to_string(working); + if working_read.is_err(){ + let error = working_read.err().unwrap(); + println!("error reading general notes file!"); + println!("{}", error); + return + } + let general_string = working_read.unwrap(); + println!("reading scop from general notes..."); + let mut scope_ranges = Vec::new(); + let general_lines: Vec<&str> = general_string.split("\n").collect(); + for line in general_lines{ + if line.contains("|"){ + if !line.contains("range"){ + if !line.contains("--"){ + let items: Vec<&str> = line.split("|").collect(); + let scop_item = items[1].trim(); + println!("{} LOADED!!", scop_item); + scope_ranges.push(scop_item); + } + } + } + } + println!("scope loaded, parsing ip ranges..."); + let mut ips = Vec::new(); + for item in scope_ranges{ + if item.contains("/"){ + let network_split: Vec<&str> = item.split("/").collect(); + let network_part = network_split[0]; + let cidr = network_split[1]; + let network_octets: Vec<&str> = network_part.split(".").collect(); + let mut ip = String::new(); + match cidr{ + "24" => {let partial_ip = format!("{}.{}.{}.N", network_octets[0], network_octets[1], network_octets[2]); + ip.push_str(partial_ip); + }, + "16" => {let partial_ip = format!("{}.{}.N.N", network_octets[0], network_octets[1]); + ip.push_str(partial_ip);}, + "8" => {let partial_ip = format!("{}.N.N.N", network_octets[0]); ip.push_str(partial_ip)} + } + + } + } +} +*/ +pub fn get_all_host_addresses(project: &Project){ + println!("to do"); } \ No newline at end of file diff --git a/pentest_tool/src/project_controls.rs b/pentest_tool/src/project_controls.rs index f16653a..510a568 100644 --- a/pentest_tool/src/project_controls.rs +++ b/pentest_tool/src/project_controls.rs @@ -33,7 +33,7 @@ pub fn switch_project(projects: &mut Vec){ project.active = false; } else{ - println!("error unknown project id") + println!("error unknown project id"); } } }