├── README.md ├── .github └── workflows │ └── codeql-analysis.yml └── AnonymousExtractor.py /README.md: -------------------------------------------------------------------------------- 1 | # AnonymousExtraction 2 | Script to search the subdomains of the target domain 3 | 4 | # Usage 5 | It is used to make hosts, in hacking purposes and creating firewall rules. For usage visit 6 | 7 | VISIT:https://m.youtube.com/channel/UCP-5_1vvVXzjbF4iLm5Yb4w 8 | -------------------------------------------------------------------------------- /.github/workflows/codeql-analysis.yml: -------------------------------------------------------------------------------- 1 | # For most projects, this workflow file will not need changing; you simply need 2 | # to commit it to your repository. 3 | # 4 | # You may wish to alter this file to override the set of languages analyzed, 5 | # or to provide custom queries or build logic. 6 | name: "CodeQL" 7 | 8 | on: 9 | push: 10 | branches: [main] 11 | pull_request: 12 | # The branches below must be a subset of the branches above 13 | branches: [main] 14 | schedule: 15 | - cron: '0 18 * * 3' 16 | 17 | jobs: 18 | analyze: 19 | name: Analyze 20 | runs-on: ubuntu-latest 21 | 22 | strategy: 23 | fail-fast: false 24 | matrix: 25 | # Override automatic language detection by changing the below list 26 | # Supported options are ['csharp', 'cpp', 'go', 'java', 'javascript', 'python'] 27 | language: ['python'] 28 | # Learn more... 29 | # https://docs.github.com/en/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#overriding-automatic-language-detection 30 | 31 | steps: 32 | - name: Checkout repository 33 | uses: actions/checkout@v2 34 | with: 35 | # We must fetch at least the immediate parents so that if this is 36 | # a pull request then we can checkout the head. 37 | fetch-depth: 2 38 | 39 | # If this run was triggered by a pull request event, then checkout 40 | # the head of the pull request instead of the merge commit. 41 | - run: git checkout HEAD^2 42 | if: ${{ github.event_name == 'pull_request' }} 43 | 44 | # Initializes the CodeQL tools for scanning. 45 | - name: Initialize CodeQL 46 | uses: github/codeql-action/init@v1 47 | with: 48 | languages: ${{ matrix.language }} 49 | # If you wish to specify custom queries, you can do so here or in a config file. 50 | # By default, queries listed here will override any specified in a config file. 51 | # Prefix the list here with "+" to use these queries and those in the config file. 52 | # queries: ./path/to/local/query, your-org/your-repo/queries@main 53 | 54 | # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). 55 | # If this step fails, then you should remove it and run the build manually (see below) 56 | - name: Autobuild 57 | uses: github/codeql-action/autobuild@v1 58 | 59 | # ℹ️ Command-line programs to run using the OS shell. 60 | # 📚 https://git.io/JvXDl 61 | 62 | # ✏️ If the Autobuild fails above, remove it and uncomment the following three lines 63 | # and modify them (or add more) to build your code if your project 64 | # uses a compiled language 65 | 66 | #- run: | 67 | # make bootstrap 68 | # make release 69 | 70 | - name: Perform CodeQL Analysis 71 | uses: github/codeql-action/analyze@v1 72 | -------------------------------------------------------------------------------- /AnonymousExtractor.py: -------------------------------------------------------------------------------- 1 | import requests 2 | import time 3 | import urllib3 4 | import os 5 | import sys 6 | from random import randint 7 | from bs4 import BeautifulSoup 8 | from collections import Counter 9 | #Version 10 | version = 2.0 11 | #Show 12 | def showoff(): 13 | print("Author: Anonym0usWork1221") 14 | print("\n") 15 | print(f"VERSION : {version}") 16 | print('\n') 17 | print('\n\n') 18 | time.sleep(1) 19 | print("1. [*] MAKE FULL HOST FILE") 20 | print("2. [*] EXTRACT SUBDOMAINS ONLY") 21 | print("3. [*] DARK SEARCH WITH MATCHING IDENTITIES FOR GAMMING HOST ONLY") 22 | print("4. [*] IPS ") 23 | print("5. [*] EXIT\n\n") 24 | while True: 25 | getvs = input("[*] CHOICE IS YOUR OWN: ") 26 | if getvs.isnumeric(): 27 | getvs_int = int(getvs) 28 | if getvs_int == 1: 29 | run = HOST() 30 | break 31 | elif getvs_int == 2: 32 | run = Subdomains() 33 | break 34 | elif getvs_int == 3: 35 | run = DarkSearch() 36 | break 37 | elif getvs_int == 4: 38 | run = IPSearch() 39 | break 40 | elif getvs_int == 5: 41 | sys.exit(0) 42 | break 43 | else: 44 | print("[*] ENTER NUMBERS IN GIVEN RANGE") 45 | else: 46 | print("[*] MAKE SURE YOU ENTER NUMERIC VALUES") 47 | 48 | 49 | class HOST: 50 | def __init__(self): 51 | def parse_url(url): 52 | try: 53 | host = urllib3.util.url.parse_url(url).host 54 | except Exception as e: 55 | print('[*] Invalid domain, type valid One') 56 | sys.exit(1) 57 | return host 58 | def first(getfirst): 59 | with open(getfirst, 'w') as fs: 60 | fs.write("99.99.99 ban.com\n999.999 facebook.com\n222.222.222.222 ban.com\n192.168.1.1 broadcasthost\n4.5.6.6 .ban.com\n0.0.0.0 0.0.0.0 com.tencent.ig\n") 61 | fs.write("255.255.255.255 ban.com\n172.217.6.193 lh5.googleusercontent.com\nfe80::12:34:56:78%eth0 .net\nnfe80::12:34:56:78%eth0 .com\n") 62 | fs.write("2001:db8:123:456::78 .com\n2001:db8:123:456::78 .net\nah204.236.129.206 10m.com\n54.176.64.1. ig.com\n54.193.0.3 ig.com\n132.232.173.220 ig.com\n") 63 | fs.write("52.24.63.252 ig.com\n52.13.255.255 ig.com\n184.72.56.36 ig.com\n127.0.0.1 ig.com\n0.0.0.0 ig.com\n4.5.6.6 ban.com\n0.0.0.0 2.9.9.9 co..tencent.ig\n2.9.9.9.9 cheat.com\n4.4.4.4.4 Facebook.net\n") 64 | fs.write("9.9.9.9.9 twiter.com\n0.0.0.0 pubgmobile.qq.com\n4.5.6.6 pay.igamecj.com\n4.5.6.6 hkspeed.igamescj.com\n4.5.6.6 .net\n4.5.6.6 .weiyun.com\n0.0.0.0 .actencent.com\n0.0.0.0 .bqqpx.com\n0.0.0.0 .cftres.com\n0.0.0.0 .igcdn.cn\n") 65 | fs.write('loop m loop mm m m loopm\n # "# # m" # "# ## "m m" #\n#loop" #m# #mmm#" # # # # #\n # "m # #m # #mm# "mm" #\n\n') 66 | fs.close() 67 | def Make_file1(subdomain,output_file,ast): 68 | with open(output_file, 'a') as ss: 69 | ss.write("0.0.0.0 .ff212::ffee::1 #.fe9e6:1::0 ff212::ffee::1 0.0.0.0 .127.0.0.1\n") 70 | ss.write(subdomain + "," + ast + '\n') 71 | ss.close() 72 | def Make_file2(subdomain,output_file,ast): 73 | with open(output_file, 'a') as ss: 74 | ss.write("0.0.0.0 .ff212::ffee::1 #.fe9e6:1::0 ff212::ffee::1 0.0.0.0 .127.0.0.1\n") 75 | ss.write(ast + " " + subdomain + '\n') 76 | ss.close() 77 | def Make_file3(subdomain,output_file,ast): 78 | with open(output_file, 'a') as ss: 79 | ss.write("0.0.0.0 .ff212::ffee::1 #.fe9e6:1::0 ff212::ffee::1 0.0.0.0 .127.0.0.1\n") 80 | ss.write(ast + " "+ subdomain + '\n') 81 | ss.close() 82 | def Make_file4(subdomain,output_file,ast): 83 | with open(output_file, 'a') as ss: 84 | ss.write("0.0.0.0 .ff212::ffee::1 #.fe9e6:1::0 ff212::ffee::1 0.0.0.0 .127.0.0.1\n") 85 | ss.write(subdomain + "," + ast + '\n') 86 | ss.close() 87 | def Last(getlast): 88 | with open(getlast, 'a') as lw: 89 | lw.write("\nlocalhost.localdomain\nlocalhost 127.0.0.1\nlocalhost 0.0.0.0\n127.0.0.1 :\n0.0.0.0 :\n") 90 | lw.close() 91 | def main(): 92 | subdomains = [] 93 | attacks = input("[*] How Much Domains You want to put: ") 94 | domains = [] 95 | d = 1 96 | if attacks.isnumeric(): 97 | attacks_int = int(attacks) 98 | while d < attacks_int + 1: 99 | gets = input("[*] Input Your " + str(d) + " Domain : ") 100 | domains.append(gets) 101 | d +=1 102 | else: 103 | sys.exit(1) 104 | output = str(input("[*] Enter File Name to save: ")) 105 | ad = False 106 | ac = False 107 | firstH = False 108 | print("\n1. [*] WANT TO PUT PREFIXES (IP AT FIRST) MANUALLY") 109 | print("2. [*] WANT TO PUT LAST IP MANUALLY") 110 | print("3. [*] USE DEFULT LAST IP AS 0.0.0.1") 111 | print("4. [*] GENETRATE RANDOM IPS AS PREFIXES") 112 | print("5. [*} GENETRATE RANDOM IPS AS LAST SETS") 113 | print("6. [*] RETURN HOME") 114 | print("7. [*] EXIT\n ") 115 | 116 | while True: 117 | stram = input("[*] CHOOSE WHAT YOU WANT : ") 118 | if stram.isnumeric(): 119 | stram_int = int(stram) 120 | if stram_int == 1: 121 | ab = input("\n[*] Enter your IP: ") 122 | firstH = True 123 | break 124 | elif stram_int == 2: 125 | ab = input("\n[*] Enter your IP: ") 126 | if "." in ab: 127 | break 128 | else: 129 | print("[!] WRITE CORRECT IP LIKE 127.0.0.1") 130 | elif stram_int == 3: 131 | ab = "0.0.0.1" 132 | break 133 | elif stram_int == 4: 134 | ad = True 135 | break 136 | elif stram_int == 5: 137 | ac = True 138 | break 139 | elif stram_int == 6: 140 | showoff() 141 | break 142 | elif stram_int == 7: 143 | sys.exit(1) 144 | break 145 | else: 146 | print("\n[*] PUT NUMBER IN THE GIVEN RANGE\n") 147 | else: 148 | print("\n[*] MAKE SURE TO PUT ONLY INTEGERS\n") 149 | 150 | first(output) 151 | print("\n") 152 | print("Please Wait: Gethering Info") 153 | print("\n\n") 154 | for t in domains: 155 | target = parse_url(t) 156 | try: 157 | request = requests.get(f'https://crt.sh/?q=%.{target}&output=json') 158 | except: 159 | print("[*] #################### CONNECTION FAILED PLEASE CHECK YOUR NETWORK CONNECTION ################### [*]") 160 | sys.exit(1) 161 | if request.status_code != 200: 162 | print(f'[*] Information not Available For that Target: {target}') 163 | sys.exit(1) 164 | for (key,value) in enumerate(request.json()): 165 | subdomains.append(value['name_value']) 166 | print(f"\n[!] **************** TARGET ATTACK : {target} *********************** \n") 167 | Tries = sorted(set(subdomains)) 168 | if ad or ac == True: 169 | ip1 = randint(1,360) 170 | ip2 = randint(1,300) 171 | ip3 = randint(1,400) 172 | ip4 = randint(1,330) 173 | ip = ip1 + '.' + ip2 + '.' + ip3 +'.' +ip4 174 | if ad == True: 175 | for w in Tries: 176 | print(f'{w}\n') 177 | if output is not None: 178 | Make_file2(w, output,ip) 179 | elif ac == True: 180 | for w in Tries: 181 | print(f'{w}\n') 182 | if output is not None: 183 | Make_file1(w, output,ip) 184 | elif firstH == True: 185 | for w in Tries: 186 | print(f'{w}\n') 187 | if output is not None: 188 | Make_file3(w, output,ab) 189 | else: 190 | for w in Tries: 191 | print(f'{w}\n') 192 | if output is not None: 193 | Make_file4(w, output,ab) 194 | 195 | Last(output) 196 | print("\n\n[!!] DONE EXTRACTION SUBSCRIBE TO MY CHANNEL FOR MORE HACKING TOOLS...........\n") 197 | try: 198 | os.startfile(output) 199 | except: 200 | pass 201 | print("Process completed") 202 | print("\n\n") 203 | if __name__=='__main__': 204 | main() 205 | 206 | #Subdomains only 207 | class Subdomains: 208 | def __init__(self): 209 | def parse_url(url): 210 | try: 211 | host = urllib3.util.url.parse_url(url).host 212 | except Exception as e: 213 | print('[*] Invalid domain, type valid One') 214 | sys.exit(1) 215 | return host 216 | def Make_file(subdomain,output_file): 217 | with open(output_file, 'a') as ss: 218 | ss.write(subdomain + '\n') 219 | ss.close() 220 | def main(): 221 | subdomains = [] 222 | attacks = input("[*] How Much Domains You want to put: ") 223 | domains = [] 224 | d = 1 225 | if attacks.isnumeric(): 226 | attacks_int = int(attacks) 227 | while d < attacks_int + 1: 228 | gets = input("[*] Input Your " + str(d) + " Domain : ") 229 | domains.append(gets) 230 | d +=1 231 | else: 232 | sys.exit(1) 233 | output = str(input("[*] Enter File Name to save: ")) 234 | print("\n") 235 | print("Please Wait: Gethering Info") 236 | print("\n\n") 237 | for t in domains: 238 | target = parse_url(t) 239 | try: 240 | request = requests.get(f'https://crt.sh/?q=%.{target}&output=json') 241 | except: 242 | print("[*] #################### CONNECTION FAILED PLEASE CHECK YOUR NETWORK CONNECTION ################### [*]") 243 | sys.exit(1) 244 | if request.status_code != 200: 245 | print('[*] Information not Available For that Target!') 246 | sys.exit(1) 247 | for (key,value) in enumerate(request.json()): 248 | subdomains.append(value['name_value']) 249 | print(f"\n[!] **************** TARGET ATTACK : {target} *********************** \n") 250 | Tries = sorted(set(subdomains)) 251 | for w in Tries: 252 | print(f'{w}\n') 253 | if output is not None: 254 | Make_file(w, output) 255 | print("\n\n[!!] DONE EXTRACTION SUBSCRIBE TO MY CHANNEL FOR MORE HACKING TOOLS...........\n") 256 | try: 257 | os.startfile(output) 258 | except: 259 | pass 260 | print("Process completed") 261 | print("\n\n") 262 | if __name__=='__main__': 263 | main() 264 | 265 | #darkDeepSearch 266 | class DarkSearch: 267 | def __init__(self): 268 | def parse_url(url): 269 | try: 270 | host = urllib3.util.url.parse_url(url).host 271 | except Exception as e: 272 | print('[*] Invalid domain, type valid One') 273 | sys.exit(1) 274 | return host 275 | def first(getfirst): 276 | with open(getfirst, 'w') as fs: 277 | fs.write("99.99.99 ban.com\n999.999 facebook.com\n222.222.222.222 ban.com\n192.168.1.1 broadcasthost\n4.5.6.6 .ban.com\n0.0.0.0 0.0.0.0 com.tencent.ig\n") 278 | fs.write("255.255.255.255 ban.com\n172.217.6.193 lh5.googleusercontent.com\nfe80::12:34:56:78%eth0 .net\nnfe80::12:34:56:78%eth0 .com\n") 279 | fs.write("2001:db8:123:456::78 .com\n2001:db8:123:456::78 .net\nah204.236.129.206 10m.com\n54.176.64.1. ig.com\n54.193.0.3 ig.com\n132.232.173.220 ig.com\n") 280 | fs.write("52.24.63.252 ig.com\n52.13.255.255 ig.com\n184.72.56.36 ig.com\n127.0.0.1 ig.com\n0.0.0.0 ig.com\n4.5.6.6 ban.com\n0.0.0.0 2.9.9.9 co..tencent.ig\n2.9.9.9.9 cheat.com\n4.4.4.4.4 Facebook.net\n") 281 | fs.write("9.9.9.9.9 twiter.com\n0.0.0.0 pubgmobile.qq.com\n4.5.6.6 pay.igamecj.com\n4.5.6.6 hkspeed.igamescj.com\n4.5.6.6 .net\n4.5.6.6 .weiyun.com\n0.0.0.0 .actencent.com\n0.0.0.0 .bqqpx.com\n0.0.0.0 .cftres.com\n0.0.0.0 .igcdn.cn\n") 282 | fs.write('loop m loop mm m m loopm\n # "# # m" # "# ## "m m" #\n#loop" #m# #mmm#" # # # # #\n # "m # #m # #mm# "mm" #\n\n') 283 | fs.close() 284 | def Make_file1(subdomain,output_file,ast): 285 | with open(output_file, 'a') as ss: 286 | ss.write("0.0.0.0 .ff212::ffee::1 #.fe9e6:1::0 ff212::ffee::1 0.0.0.0 .127.0.0.1\n") 287 | ss.write(subdomain + "," + ast + '\n') 288 | ss.close() 289 | def Make_file2(subdomain,output_file,ast): 290 | with open(output_file, 'a') as ss: 291 | ss.write("0.0.0.0 .ff212::ffee::1 #.fe9e6:1::0 ff212::ffee::1 0.0.0.0 .127.0.0.1\n") 292 | ss.write(ast + " " + subdomain + '\n') 293 | ss.close() 294 | def Make_file3(subdomain,output_file,ast): 295 | with open(output_file, 'a') as ss: 296 | ss.write("0.0.0.0 .ff212::ffee::1 #.fe9e6:1::0 ff212::ffee::1 0.0.0.0 .127.0.0.1\n") 297 | ss.write(ast + " "+ subdomain + '\n') 298 | ss.close() 299 | def Make_file4(subdomain,output_file,ast): 300 | with open(output_file, 'a') as ss: 301 | ss.write("0.0.0.0 .ff212::ffee::1 #.fe9e6:1::0 ff212::ffee::1 0.0.0.0 .127.0.0.1\n") 302 | ss.write(subdomain + "," + ast + '\n') 303 | ss.close() 304 | def Last(getlast): 305 | with open(getlast, 'a') as lw: 306 | lw.write("\nlocalhost.localdomain\nlocalhost 127.0.0.1\nlocalhost 0.0.0.0\n127.0.0.1 :\n0.0.0.0 :\n") 307 | lw.close() 308 | def main(): 309 | subdomains = [] 310 | attacks = input("[*] How Much Domains You want to put: ") 311 | domains = [] 312 | d = 1 313 | if attacks.isnumeric(): 314 | attacks_int = int(attacks) 315 | while d < attacks_int + 1: 316 | gets = input("[*] Input Your " + str(d) + " Domain : ") 317 | domains.append(gets) 318 | d +=1 319 | else: 320 | sys.exit(1) 321 | output = str(input("[*] Enter File Name to save: ")) 322 | ad = False 323 | ac = False 324 | firstH = False 325 | print("\n1. [*] WANT TO PUT PREFIXES (IP AT FIRST) MANUALLY") 326 | print("2. [*] WANT TO PUT LAST IP MANUALLY") 327 | print("3. [*] USE DEFULT LAST IP AS 0.0.0.1") 328 | print("4. [*] GENETRATE RANDOM IPS AS PREFIXES") 329 | print("5. [*} GENETRATE RANDOM IPS AS LAST SETS") 330 | print("6. [*] RETURN HOME") 331 | print("7. [*] EXIT\n ") 332 | 333 | while True: 334 | stram = input("[*] CHOOSE WHAT YOU WANT : ") 335 | if stram.isnumeric(): 336 | stram_int = int(stram) 337 | if stram_int == 1: 338 | ab = input("\n[*] Enter your IP: ") 339 | firstH = True 340 | break 341 | elif stram_int == 2: 342 | ab = input("\n[*] Enter your IP: ") 343 | if "." in ab: 344 | break 345 | else: 346 | print("[!] WRITE CORRECT IP LIKE 127.0.0.1") 347 | elif stram_int == 3: 348 | ab = "0.0.0.1" 349 | break 350 | elif stram_int == 4: 351 | ad = True 352 | break 353 | elif stram_int == 5: 354 | ac = True 355 | break 356 | elif stram_int == 6: 357 | showoff() 358 | break 359 | elif stram_int == 7: 360 | sys.exit(1) 361 | break 362 | else: 363 | print("\n[*] PUT NUMBER IN THE GIVEN RANGE\n") 364 | else: 365 | print("\n[*] MAKE SURE TO PUT ONLY INTEGERS\n") 366 | 367 | first(output) 368 | print("\n") 369 | print("Please Wait: Gethering Info") 370 | print("\n\n") 371 | for t in domains: 372 | target = parse_url(t) 373 | try: 374 | request = requests.get(f'https://crt.sh/?q=%.{target}&output=json') 375 | req2 = requests.get(f'https://webiplookup.com/{target}/domain.htm') 376 | except: 377 | print("[*] #################### CONNECTION FAILED PLEASE CHECK YOUR NETWORK CONNECTION ################### [*]") 378 | sys.exit(1) 379 | #req2 380 | try: 381 | website = req2.text 382 | soup = BeautifulSoup(website, features = "html.parser") 383 | except: 384 | print("[*] GETTING ERROR CHECK YOU INSTALLED (bs4) MODULE PROPERLY?") 385 | 386 | if request.status_code and req2.status_code != 200: 387 | print(f'[*] Information not Available For that Target: {target}') 388 | sys.exit(1) 389 | for (key,value) in enumerate(request.json()): 390 | subdomains.append(value['name_value']) 391 | #req2 392 | for link in soup.find_all("a", attrs={"target": "_blank"}): 393 | d = str(link.get_text()) 394 | if target in d: 395 | subdomains.append(d) 396 | else: 397 | pass 398 | print(f"\n[!] **************** TARGET ATTACK : {target} *********************** \n") 399 | Tries = sorted(set(subdomains)) 400 | if ad or ac == True: 401 | ip1 = str(randint(1,360)) 402 | ip2 = str(randint(1,300)) 403 | ip3 = str(randint(1,400)) 404 | ip4 = str(randint(1,330)) 405 | ip = ip1 + '.' + ip2 + '.' + ip3 +'.' +ip4 406 | if ad == True: 407 | for w in Tries: 408 | print(f'{w}\n') 409 | if output is not None: 410 | Make_file2(w, output,ip) 411 | elif ac == True: 412 | for w in Tries: 413 | print(f'{w}\n') 414 | if output is not None: 415 | Make_file1(w, output,ip) 416 | elif firstH == True: 417 | for w in Tries: 418 | print(f'{w}\n') 419 | if output is not None: 420 | Make_file3(w, output,ab) 421 | else: 422 | for w in Tries: 423 | print(f'{w}\n') 424 | if output is not None: 425 | Make_file4(w, output,ab) 426 | 427 | Last(output) 428 | print("\n\n[!!] DONE EXTRACTION SUBSCRIBE TO MY CHANNEL FOR MORE HACKING TOOLS...........\n") 429 | try: 430 | os.startfile(output) 431 | except: 432 | pass 433 | print("Process completed") 434 | print("\n\n") 435 | if __name__=='__main__': 436 | main() 437 | 438 | #allIps 439 | class IPSearch: 440 | def __init__(self): 441 | def parse_url(url): 442 | try: 443 | host = urllib3.util.url.parse_url(url).host 444 | except Exception as e: 445 | print('[*] Invalid domain, type valid One') 446 | sys.exit(1) 447 | return host 448 | def first(getfirst): 449 | with open(getfirst, 'w') as fs: 450 | fs.write("99.99.99 ban.com\n999.999 facebook.com\n222.222.222.222 ban.com\n192.168.1.1 broadcasthost\n4.5.6.6 .ban.com\n0.0.0.0 0.0.0.0 com.tencent.ig\n") 451 | fs.write("255.255.255.255 ban.com\n172.217.6.193 lh5.googleusercontent.com\nfe80::12:34:56:78%eth0 .net\nnfe80::12:34:56:78%eth0 .com\n") 452 | fs.write("2001:db8:123:456::78 .com\n2001:db8:123:456::78 .net\nah204.236.129.206 10m.com\n54.176.64.1. ig.com\n54.193.0.3 ig.com\n132.232.173.220 ig.com\n") 453 | fs.write("52.24.63.252 ig.com\n52.13.255.255 ig.com\n184.72.56.36 ig.com\n127.0.0.1 ig.com\n0.0.0.0 ig.com\n4.5.6.6 ban.com\n0.0.0.0 2.9.9.9 co..tencent.ig\n2.9.9.9.9 cheat.com\n4.4.4.4.4 Facebook.net\n") 454 | fs.write("9.9.9.9.9 twiter.com\n0.0.0.0 pubgmobile.qq.com\n4.5.6.6 pay.igamecj.com\n4.5.6.6 hkspeed.igamescj.com\n4.5.6.6 .net\n4.5.6.6 .weiyun.com\n0.0.0.0 .actencent.com\n0.0.0.0 .bqqpx.com\n0.0.0.0 .cftres.com\n0.0.0.0 .igcdn.cn\n") 455 | fs.write('loop m loop mm m m loopm\n # "# # m" # "# ## "m m" #\n#loop" #m# #mmm#" # # # # #\n # "m # #m # #mm# "mm" #\n') 456 | fs.write("0.0.0.0 .net\n0.0.0.0 .com\n0.0.0.0 .org\n0.0.0.0 .kr\n0.0.0.0 .xyz\n0.0.0.0 .qq.com\n0.0.0.0 .gtimg.com\n0.0.0.0 .akmized.com\n0.0.0.0 .in\n0.0.0.0 .uk\n0.0.0.0 .qlogo.cn\n0.0.0.0 .twimg.com\n0.0.0.0 .reverse.com\n0.0.0.0 .fbsbx.com\n0.0.0.0 .cnzz.com\n0.0.0.0 .googletamanager.com\n0.0.0.0 .intellitxt.com\n0.0.0.0 .googleapis.com\n0.0.0.0 .fbsbx.com\n0.0.0.0 .app-measurement.com\n0.0.0.0 .ushareit.com\n0.0.0.0 .userapi.com\n0.0.0.0 .1e100.net\n0.0.0.0 .cn\n0.0.0.0 .cnzz\n0.0.0.0 .us\n0.0.0.0 .jp\n0.0.0.0 .tech\n0.0.0.0 .qq\n0.0.0.0 .cn\n") 457 | fs.write("0.0.0.0 .co\n0.0.0.0 .icu\n0.0.0.0 .vip\n0.0.0.0 .tv\n0.0.0.0 .seedmm\n0.0.0.0 .work\n") 458 | fs.write('0.0.0.0 45.51.177.92\n0.0.0.0 192.168.43.1\n0.0.0.0 45.40.223.218\n0.0.0.0 20.37.82.36\n0.0.0.0 150.109.124.135\n0.0.0.0 182.254.116.117\n0.0.0.0 49.51.42.152\n0.0.0.0 45.40.223.66\n0.0.0.0 45.40.220.200\n0.0.0.0 2001:db8:123:456::78\n0.0.0.0 2001:db8:123:456::78\n') 459 | fs.write('0.0.0.0 .gcloudsdk.com\n0.0.0.0 .facebook.com\n0.0.0.0 .igamecj.com\n0.0.0.0 .tdatamaster.com\n0.0.0.0 .gcloudcs.com\n0.0.0.0 .adjust.com\n0.0.0.0 .fbsbx.com\n0.0.0.0 .googleusercontent.com\n0.0.0.0 .proximabeta.com\n0.0.0.0 .pubgmobile.com\n0.0.0.0 .battlegroundsmobile.kr\n0.0.0.0 .qcloud.com\n0.0.0.0 .qq.com\n0.0.0.0 .helpshift.com\n0.0.0.0 .wetest.net\n') 460 | fs.close() 461 | def Make_file3(subdomain,output_file,ast): 462 | with open(output_file, 'a') as ss: 463 | ss.write("0.0.0.0 .ff212::ffee::1 #.fe9e6:1::0 ff212::ffee::1 0.0.0.0 .127.0.0.1\n") 464 | for sa in ast: 465 | ss.write(sa + " "+ subdomain + '\n') 466 | ss.close() 467 | def Make_file4(subdomain,output_file,ast): 468 | with open(output_file, 'a') as ss: 469 | ss.write("0.0.0.0 .ff212::ffee::1 #.fe9e6:1::0 ff212::ffee::1 0.0.0.0 .127.0.0.1\n") 470 | for sa in ast: 471 | ss.write(subdomain + "," + sa + '\n') 472 | ss.close() 473 | def Last(getlast,ips,domains): 474 | with open(getlast, 'a') as lw: 475 | for s in ips : 476 | for w in domains: 477 | lw.write(f'\n{s} localhost\n::1 ip6-localhost\n{s} loop m mm mmm mmm mm#mm\n #" "# #" " #" "# #" "# #\n # # # # # # # #\n "#m"# # "#m#" "#m#" "mm m #\n ""#loop" #m# #mmm#" # # # # # "\n # "m # #m # #mm# "mm" #\n{s} .{w}\n # " # "m # # # ## mm#mm\n{s} .{w}\nloop m loop mm m m loopm\n # "# # m" # "# ## "m m" #\n #loop" #m# #mmm#" # # # # #\n{s} .{w}\n#loop" #m# #mmm#" # # # # #\n # "m # #m # #mm# "mm" #\n{s} .{w}\n # " # "m # # # ## mm#mm\n{s} .a{w}\nloop m loop mm m m loopm\n # "# # m" # "# ## "m m" #\n #loop" #m# #mmm#" # # # # #\n{s} .{w}\n#loop" #m# #mmm#" # # # # #\n # "m # #m # #mm# "mm" #\n # " # "m # # # ## mm#mm\n{s} .{w}\n{s} .{w}\n#loop" #m# #mmm#" # # # # #\n # "m # #m # #mm# "mm" #\n # " # "m # # # ## mm#mm\n{s} .{w}\n#loop" #m# #mmm#" # # # # #\n # "m # #m # #mm# "mm" #\n') 478 | lw.write(f'{s} .{w}\n#loop" #m# #mmm#" # # # # #\n# "m # #m # #mm# "mm" #\n') 479 | lw.write('8.8.8.8 : 49.51.137.169\n8.8.8.8 : 129.226.20.31\n8.8.8.8 : 125.17.143.20\n8.8.8.8 : 157.47.102.145\n8.8.8.8 : 192.168.1.77\n8.8.8.8 : 192.168.1.64\n8.8.8.8 : 176.23.125.6\n8.8.8.8 : 74.125.142.27\n8.8.8.8 : 169.38.138.34\n8.8.8.8 : 49.51.42.152\n8.8.8.8 : 192.168.43.1\n8.8.8.8 : 169.38.124.176\n8.8.8.8 : 119.28.250.154\n8.8.8.8 : 129.226.20.140\n8.8.8.8 : 119.28.252.24\n8.8.8.8 : 169.38.104.202\n8.8.8.8 : 119.28.244.50\n8.8.8.8 : 49.51.42.99\n8.8.8.8 : 49.51.42.152\n8.8.8.8 : 169.38.138.229\n8.8.8.8 : 192.168.43.1\n8.8.8.8 : 150.109.124.26\n8.8.8.8 : 150.109.124.161\n') 480 | lw.write('8.8.8.8 : 169.38.104.245\n8.8.8.8 : 45.40.223.119\n8.8.8.8 : 45.40.223.42\n8.8.8.8 : 169.38.138.212\n8.8.8.8 : 45.40.223.246\n8.8.8.8 : 169.38.104.196\n8.8.8.8 : 45.40.223.55\n8.8.8.8 : 45.40.223.115\n8.8.8.8 : 45.40.220.236\n8.8.8.8 : 49.51.42.152\n8.8.8.8 : 150.109.29.150\n8.8.8.8 : 119.28.121.174\n8.8.8.8 : 150.109.124.196\n8.8.8.8 : 45.40.220.178\n8.8.8.8 : 150.109.0.38\n8.8.8.8 : 150.109.0.45\n8.8.8.8 : 150.109.124.67\n8.8.8.8 : 45.40.223.193\n8.8.8.8 : 124.156.62.235\n8.8.8.8 : 119.28.244.50\n8.8.8.8 : 119.28.244.50\n8.8.8.8 : 203.205.137.232\n8.8.8.8 : 203.205.137.242\n8.8.8.8 : 45.40.223.125\n') 481 | lw.write('8.8.8.8 : 150.109.124.147\n8.8.8.8 : 124.156.50.114\n8.8.8.8 : 150.109.124.127\n8.8.8.8 : 45.40.223.210\n8.8.8.8 : 124.156.40.50\n8.8.8.8 : 49.51.42.152\n8.8.8.8 : 124.156.12.224 \n8.8.8.8 : 119.28.252.31\n8.8.8.8 : 119.28.250.62\n8.8.8.8 : 49.51.42.152\n8.8.8.8 : 129.226.22.149\n8.8.8.8 : 119.28.249.247\n8.8.8.8 : 124.156.50.69\n8.8.8.8 : 119.28.246.225\n8.8.8.8 : 124.156.40.38\n8.8.8.8 : 124.156.12.103\n8.8.8.8 : 192.168.43.1\n8.8.8.8 : 129.226.20.68\n8.8.8.8 : 119.28.252.22\n8.8.8.8 : 119.28.251.21\n8.8.8.8 : 124.156.13.239\n8.8.8.8 : 129.226.22.9\n8.8.8.8 : 169.38.138.214\n8.8.8.8 : 129.226.20.44\n8.8.8.8 : 129.226.22.236\n8.8.8.8 : 169.38.138.194\n8.8.8.8 : 129.226.22.236\n8.8.8.8 : 119.28.252.20\n') 482 | lw.write('8.8.8.8 : 49.51.66.82\n8.8.8.8 : 124.156.40.170\n8.8.8.8 : 124.156.33.65\n8.8.8.8 : 169.38.104.150\n8.8.8.8 : 119.28.252.80\n8.8.8.8 : 124.156.12.89\n8.8.8.8 : 101.32.80.230\n8.8.8.8 : 169.38.138.157\n8.8.8.8 : 119.28.247.32\n8.8.8.8 : 182.254.116.117\n8.8.8.8 : 119.28.246.125\n8.8.8.8 : 169.38.138.116\n8.8.8.8 : 124.156.13.105\n8.8.8.8 : 129.226.20.46\n8.8.8.8 : 101.32.80.230\n8.8.8.8 : 169.38.138.205\n8.8.8.8 : 119.28.248.210\n8.8.8.8 : 129.226.23.150\n8.8.8.8 : 129.226.22.40\n8.8.8.8 : 169.38.104.191\n8.8.8.8 : 119.28.246.160\n8.8.8.8 : 129.226.20.122\n8.8.8.8 : 169.38.104.223\n8.8.8.8 : 129.226.20.11\n8.8.8.8 : 129.226.20.208\n8.8.8.8 : 169.38.138.229\n8.8.8.8 : 124.156.13.130\n8.8.8.8 : 124.156.34.55\n8.8.8.8 : 45.40.223.226\n') 483 | lw.write('8.8.8.8 : 49.51.42.152\n8.8.8.8 : 124.156.64.155\n8.8.8.8 : 45.40.223.131\n8.8.8.8 : 192.168.43.1\n8.8.8.8 : 129.226.20.54\n8.8.8.8 : 49.51.42.152\n8.8.8.8 : 169.38.104.177\n8.8.8.8 : 129.226.22.95\n8.8.8.8 : 49.51.42.152\n8.8.8.8 : 129.226.20.124\n8.8.8.8 : 129.226.22.213\n8.8.8.8 : 129.226.22.83\n8.8.8.8 : 129.226.23.57\n8.8.8.8 : 119.28.247.163\n8.8.8.8 : 45.40.220.187\n8.8.8.8 : 45.40.220.200\n8.8.8.8 : 119.28.250.208 \n8.8.8.8 : 129.226.20.66\n8.8.8.8 : 124.156.34.15\n8.8.8.8 : 169.38.138.160\n8.8.8.8 : 192.168.43.1\n8.8.8.8 : 129.226.20.54\n8.8.8.8 : 129.226.22.95\n8.8.8.8 : 129.226.22.213\n8.8.8.8 : 119.28.250.208\n8.8.8.8 : 169.38.92.221\n8.8.8.8 : 124.156.34.15\n8.8.8.8 : 150.109.124.251\n8.8.8.8 : 150.109.124.148\n8.8.8.8 : 150.109.124.251\n8.8.8.8 : 150.109.124.148\n8.8.8.8 : 45.40.223.226\n8.8.8.8 : 49.51.42.152\n8.8.8.8 : 45.40.223.131\n') 484 | lw.write('8.8.8.8 : 124.156.64.155\n8.8.8.8 : 192.168.43.1\n8.8.8.8 : 150.109.124.248\n8.8.8.8 : 124.156.34.43\n8.8.8.8 : 45.40.220.207\n8.8.8.8 : 150.109.124.230\n8.8.8.8 : 150.109.124.22\n8.8.8.8 : 169.38.138.119\n8.8.8.8 : 45.40.220.136\n8.8.8.8 : 45.40.220.72\n8.8.8.8 : 169.38.138.2\n8.8.8.8 : 182.254.116.117\n8.8.8.8 : 45.40.220.39\n8.8.8.8 : 150.109.124.52\n8.8.8.8 : 192.168.43.1\n8.8.8.8 : 45.40.223.26\n8.8.8.8 : 124.156.64.161\n8.8.8.8 : 45.40.223.190\n8.8.8.8 : 45.40.220.95\n8.8.8.8 : 124.156.55.106\n8.8.8.8 : 169.38.138.116\n8.8.8.8 : 124.156.13.105\n8.8.8.8 : 101.32.80.230\n8.8.8.8 : 101.32.80.233\n8.8.8.8 : 129.226.23.150\n8.8.8.8 : 169.38.104.191\n8.8.8.8 : 129.226.20.122\n8.8.8.8 : 129.226.20.11\n8.8.8.8 : 129.226.20.208\n8.8.8.8 : 169.38.138.229\n8.8.8.8 : 124.156.13.130\n8.8.8.8 : 124.156.34.55\n8.8.8.8 : 45.40.223.221\n') 485 | lw.write("\nlocalhost.localdomain\nlocalhost 127.0.0.1\nlocalhost 0.0.0.0\n127.0.0.1 :\n0.0.0.0 :\n") 486 | lw.close() 487 | def main(): 488 | subdomains = [] 489 | attacks = input("[*] How Much Domains You want to put: ") 490 | domains = [] 491 | ips =['0.0.0.0', '0.0.0.1', '127.0.0.1' , '8.8.8.8' , '8.8.4.4'] 492 | d = 1 493 | if attacks.isnumeric(): 494 | attacks_int = int(attacks) 495 | while d < attacks_int + 1: 496 | gets = input("[*] Input Your " + str(d) + " Domain : ") 497 | domains.append(gets) 498 | d +=1 499 | else: 500 | sys.exit(1) 501 | output = str(input("[*] Enter File Name to save: ")) 502 | firstH = False 503 | al = False 504 | print("\n1. [*] WANT TO PUT PREFIXES (IP AT FIRST)") 505 | print("2. [*] WANT TO PUT LAST IP") 506 | print("3. [*] RETURN HOME") 507 | print("4. [*] EXIT\n ") 508 | 509 | while True: 510 | stram = input("[*] CHOOSE WHAT YOU WANT : ") 511 | if stram.isnumeric(): 512 | stram_int = int(stram) 513 | if stram_int == 1: 514 | firstH = True 515 | break 516 | elif stram_int == 2: 517 | al = True 518 | elif stram_int == 3: 519 | showoff() 520 | break 521 | elif stram_int == 4: 522 | sys.exit(1) 523 | break 524 | else: 525 | print("\n[*] PUT NUMBER IN THE GIVEN RANGE\n") 526 | else: 527 | print("\n[*] MAKE SURE TO PUT ONLY INTEGERS\n") 528 | 529 | first(output) 530 | print("\n") 531 | print("Please Wait: Gethering Info") 532 | print("\n\n") 533 | for t in domains: 534 | target = parse_url(t) 535 | try: 536 | req2 = requests.get(f'https://webiplookup.com/{target}/domain.htm') 537 | reqIP = requests.get(f"https://webiplookup.com/{target}/") 538 | except: 539 | print("[*] #################### CONNECTION FAILED PLEASE CHECK YOUR NETWORK CONNECTION ################### [*]") 540 | sys.exit(1) 541 | #req2 542 | try: 543 | website = req2.text 544 | soup = BeautifulSoup(website, features = "html.parser") 545 | website2 = reqIP.text 546 | soup2 = BeautifulSoup(website2, features = "html.parser") 547 | except: 548 | print("[*] GETTING ERROR CHECK YOU INSTALLED (bs4) MODULE PROPERLY?") 549 | 550 | if req2.status_code and reqIP.status_code != 200: 551 | print(f'[*] Information not Available For that Target: {target}') 552 | sys.exit(1) 553 | 554 | #req2 555 | for link in soup.find_all("a", attrs={"target": "_blank"}): 556 | d = str(link.get_text()) 557 | if target in d: 558 | subdomains.append(d) 559 | else: 560 | pass 561 | #ips getting 562 | for linkIP in soup2.find_all("a", attrs={"target": "_blank"}): 563 | IPw = linkIP.get_text() 564 | length = Counter(IPw) 565 | var = "a","b",'c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z' 566 | for (k,v) in length.items(): 567 | if k == "." and v == 3 and length != var: 568 | ips.append(IPw) 569 | else: 570 | pass 571 | 572 | time.sleep(4) 573 | print(f"\n[!] **************** TARGET ATTACK : {target} *********************** \n") 574 | Tries = sorted(set(subdomains)) 575 | 576 | if firstH == True: 577 | for w in Tries: 578 | print(f'{w}\n') 579 | if output is not None: 580 | Make_file3(w, output,ips) 581 | elif al == True: 582 | for w in Tries: 583 | print(f'{w}\n') 584 | if output is not None: 585 | Make_file4(w, output,ips) 586 | 587 | Last(output,ips,domains) 588 | print("\n\n[!!] DONE EXTRACTION SUBSCRIBE TO MY CHANNEL FOR MORE HACKING TOOLS...........\n") 589 | try: 590 | os.startfile(output) 591 | except: 592 | pass 593 | print("Process completed") 594 | print("\n\n") 595 | if __name__=='__main__': 596 | main() 597 | 598 | showoff() 599 | --------------------------------------------------------------------------------