⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 options.c

📁 linux平台上高级的包嗅探和会话劫持工
💻 C
字号:
/* * *	This is free software. You can redistribute it and/or modify under *	the terms of the GNU General Public License version 2. * * 	Copyright (C) 1998 by kra * */#include "hunt.h"#include <stdio.h>#include <string.h>#include <stdlib.h>#define LINES_O_UNLIMITED	1000000int lines_o = LINES_O_UNLIMITED;static void list_conn_properties(void){	int c;	int mac, seq;		c = menu_choose_char("print MAC y/n", "ny", conn_list_mac ? 'y' : 'n');	switch (c) {	    case 'n':		mac = 0;		break;	    case 'y':		mac = 1;		break;	    default:		return;	}	c = menu_choose_char("print SEQ y/n", "ny", conn_list_seq ? 'y' : 'n');	switch (c) {	    case 'n':		seq = 0;		break;	    case 'y':		seq = 1;		break;	    default:		return;	}	conn_list_mac = mac;	conn_list_seq = seq;	}static void suggest_mac_setup(void){	char buf[128];	unsigned char buf_mac[ETH_ALEN];		sprintf_eth_mac(buf, __suggest_mac);	if (menu_choose_mac("suggest MAC base", buf_mac, buf) < 0)		return;	memcpy(__suggest_mac, buf_mac, sizeof(buf_mac));}static void print_host_properties(void){	switch (menu_choose_char("Resolve host names", "yn", 				 hl_mode == HL_MODE_NR ? 'n' : 'y')) {	    case 'y':		hl_mode = HL_MODE_DEFERRED;		break;	    case 'n':		hl_mode = HL_MODE_NR;		break;	    default:		break;	}}static void mac_learn_from_ip_opt(void){	switch (menu_choose_char("Learn MAC from IP traffic", "yn", 				 mac_learn_from_ip == 0 ? 'n' : 'y')) {	    case 'y':		mac_learn_from_ip = 1;		break;	    case 'n':		mac_learn_from_ip = 0;		break;	    default:		break;	}}static void storm_reset_sec_setup(void){	int sec;		if ((sec = menu_choose_unr("ACK storm reset sec", 0, 10000, storm_reset_sec)) < 0)		return;	storm_reset_sec = sec;}static void stormack_hijack_wait_sec_setup(void){	int sec;		if ((sec = menu_choose_unr("Sec to wait for next cmd with simple hijack", 0, 10000,				   stormack_hijack_wait_sec)) < 0)		return;	stormack_hijack_wait_sec = sec;}static void arp_rr_count_setup(void){	int n;		if ((n = menu_choose_unr("Number of ARP request/reply packets hunt will send", 1, 32, arp_rr_count)) < 0)		return;	arp_rr_count = n;}static void arp_request_spoof_through_request_setup(void){	switch (menu_choose_char("arp request spoof through request", "yn",				 arp_request_spoof_through_request ? 'y' : 'n')) {	    case 'y':		arp_request_spoof_through_request = 1;		break;	    case 'n':		arp_request_spoof_through_request = 0;		break;	    default:		break;	}}static void arp_spoof_switch_setup(void){	switch (menu_choose_char("switched environment", "yn",				 arp_spoof_switch ? 'y' : 'n')) {	    case 'y':		arp_spoof_switch = 1;		break;	    case 'n':		arp_spoof_switch = 0;		break;	    default:		break;	}}static void arp_spoof_with_my_mac_setup(void){	switch (menu_choose_char("use my mac in ARP spoofing", "yn",				 arp_spoof_with_my_mac ? 'y' : 'n')) {	    case 'y':		arp_spoof_with_my_mac = 1;		break;	    case 'n':		arp_spoof_with_my_mac = 0;		break;	    default:		break;	}}static void printed_lines_per_page(void){	int n;		n = lines_o;	if (n == LINES_O_UNLIMITED)		n = 0;	if ((n = menu_choose_unr("Number of printed lines per page in listenings", 0, 10000, n)) < 0)		return;	if (n == 0)		lines_o = LINES_O_UNLIMITED;	else		lines_o = n;}int print_cntrl_chars = 1;static void print_cntrl_chars_setup(void){	switch (menu_choose_char("print cntrl chars", "yn", 'y')) {	    case 'y':		print_cntrl_chars = 1;		break;	    case 'n':		print_cntrl_chars = 0;		break;	    default:		break;	}}static void verbose_setup(void){	switch (menu_choose_char("verbose", "yn", 				 verbose ? 'y' : 'n')) {	    case 'y':		verbose = 1;		break;	    case 'n':		verbose = 0;		break;	    default:		break;	}}void lines_o_press_key(void){	press_key("press key");	}void options_menu(void){	char buf_menu[2048];	char buf_mac[128];	char *o_keys = "lamdcghrsqtwyepvix";	int run_it;		run_it = 1;	while (run_it) {		sprintf_eth_mac(buf_mac, __suggest_mac);		sprintf(buf_menu,"l) list add conn policy                \n""a/m/d) add/mod/del conn policy entry   \n""c) conn list properties    mac %c, seq %c\n""g) suggest mac base        %s\n""h) host resolving              %c " "      t) arp req spoof through req   %c\n""r) reset ACK storm timeout   %3ds"  "      w) switched environment        %c\n""s) simple hijack cmd timeout %3ds"  "      y) arp spoof with my mac       %c\n""q) arp req/rep packets       %3d "  "      e) learn MAC from IP traffic   %c\n""p) number of lines per page  %3d "  "      v) verbose                     %c\n""i) print cntrl chars           %c\n""x) return\n",	conn_list_mac ? 'y' : 'n', conn_list_seq ? 'y' : 'n',	buf_mac,	hl_mode == HL_MODE_NR ? 'n' : 'y', arp_request_spoof_through_request ? 'y' : 'n',	storm_reset_sec, 		arp_spoof_switch ? 'y' : 'n',	stormack_hijack_wait_sec,	arp_spoof_with_my_mac ? 'y' : 'n',	arp_rr_count,			mac_learn_from_ip ? 'y' : 'n',	lines_o == LINES_O_UNLIMITED ? 0 : lines_o, verbose ? 'y' : 'n',	print_cntrl_chars ? 'y' : 'n');		switch (menu("options", buf_menu, "opt", o_keys, 0)) {		    case 'l':			addpolicy_list_items();			break;		    case 'a':			addpolicy_add_item();			break;		    case 'd':			addpolicy_del_item();			break;		    case 'm':			addpolicy_mod_item();			break;		    case 'c':			list_conn_properties();			break;		    case 'g':			suggest_mac_setup();			break;		    case 'h':			print_host_properties();			break;		    case 'r':			storm_reset_sec_setup();			break;		    case 's':			stormack_hijack_wait_sec_setup();			break;		    case 'e':			mac_learn_from_ip_opt();			break;		    case 't':			arp_request_spoof_through_request_setup();			break;		    case 'w':			arp_spoof_switch_setup();			break;		    case 'y':			arp_spoof_with_my_mac_setup();			break;		    case 'q':			arp_rr_count_setup();			break;		    case 'p':			printed_lines_per_page();			break;		    case 'v':			verbose_setup();			break;		    case 'i':			print_cntrl_chars_setup();			break;		    case 'x':			run_it = 0;			break;		}	}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -