#!/usr/bin/env python # encoding: utf-8 from IPy import IP import requests #批量Get_Flag # IP地址处理,调用方法IPs("192.168.10.0/24")或IPs("192.168.10.0.-20"),返回一个数组 def IPs(ip): IPS = [] s1 = "/" s2 = "-" if ip.find(s1) > 0: ip1 = IP(ip) for i in ip1: IPS.append(i) elif (str(ip).find(s2)) > 0: for i in range(int(str(ip)[str(ip).rfind('.') + 1:str(ip).rfind('-')]), int(str(ip)[str(ip).rfind('-') + 1:]) + 1): IPS.append(str(ip)[:str(ip).rfind('.') + 1] + str(i)) return IPS # for i in IPs("192.168.1.0-12"): # print(i) headers = { 'Accept': '*/*', 'Referer': 'https://www.baidu.com', 'User-Agent': 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 10.1; ', 'Cache-Control': 'no-cache' } def get_Requests(ip, payload): url = 'http://' + str(ip) + '/' + payload try: get_Flag = requests.get(url, headers=headers, timeout=3) return get_Flag.text except requests.exceptions.ConnectTimeout: print("Connect Timeout") def post_Requests(ip, payload, post_data): url = 'http://' + ip + '/' + payload try: get_Flag = requests.post(url, headers=headers, data=post_data, timeout=3) return get_Flag.text except requests.exceptions.ConnectTimeout: print("Connect Timeout") def main(): print('#get_Flag V1.0') ip = input('Please enter the IP range >>>') num = int(input('Please select request method 1 = get 2 = post >>>')) payload = input('Please enter the payload') if num == 2: post_data = input('Please enter post_data') for i in IPs(ip): print(post_Requests(i, payload, post_data)) else: for i in IPs(ip): print(get_Requests(i, payload)) if __name__ == '__main__': main()