> Posted by: shadow_crawler | Rank: Elite Member | Joined: 2022 [/I]
Use these techniques for authorized security testing and privacy protection. Not for bypassing rate limits on commercial services.
Alright, let's talk about staying anonymous while doing recon.
Most guys out there are just using free proxies and wondering why they get blocked. Today I'm breaking down proper proxy rotation, residential proxies, and anonymity techniques that actually work.
---
βββ PROXY TYPES EXPLAINED βββ[/B]
Code:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β PROXY TYPE COMPARISON β
ββββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββββββββββ€
β Type β Speed β Reliabilityβ Cost β
ββββββββββββββββΌββββββββββββββΌββββββββββββββΌββββββββββββββββββββββ€
β SOCKS4/5 β Fast β Medium β Free-Low β
β HTTP Forward β Fast β Low β Free-Low β
β Residential β Medium β High β $5-50/GB β
β Datacenter β Fast β Medium β $2-10/GB β
β VPN β Slow β High β $5-15/month β
ββββββββββββββββ΄ββββββββββββββ΄ββββββββββββββ΄ββββββββββββββββββββββ
My recommendation: For recon, use residential proxies. For speed, datacenter. Never trust free proxies - they're logging everything.
---
βββ AUTOMATED PROXY ROTATION βββ
Code:
#!/usr/bin/env python3
"""
Advanced Proxy Rotation Framework
Features: Health checking, automatic failover, response time tracking
"""
import requests
import socket
import threading
import queue
import time
import json
import random
from datetime import datetime
from collections import defaultdict
class ProxyRotator:
def __init__(self, proxy_list=None, max_threads=10):
self.proxies = proxy_list or self.load_proxies()
self.proxy_queue = queue.Queue()
self.results = {}
self.failed_proxies = []
self.max_threads = max_threads
self.health_check_interval = 300 # 5 minutes
self.session = requests.Session()
self.session.timeout = 10
def load_proxies(self):
"""Load proxies from file or API"""
proxies = []
# Load from file
try:
with open('proxies.txt') as f:
for line in f:
line = line.strip()
if line and not line.startswith('#'):
proxies.append(line)
except FileNotFoundError:
pass
# Add some known reliable proxies (for testing only!)
test_proxies = [
'http://127.0.0.1:8080',
'socks5://127.0.0.1:1080',
]
proxies.extend(test_proxies)
return proxies
def health_check(self, proxy):
"""Check if proxy is alive and fast"""
try:
start = time.time()
# Test connection
test_url = 'http://httpbin.org/ip'
resp = requests.get(
test_url,
proxies={'http': proxy, 'https': proxy},
timeout=5
)
response_time = time.time() - start
if resp.status_code == 200:
return {
'proxy': proxy,
'alive': True,
'response_time': response_time,
'exit_ip': resp.json().get('origin'),
'country': self.get_country(resp.json().get('origin')),
}
else:
return {'proxy': proxy, 'alive': False}
except Exception as e:
return {'proxy': proxy, 'alive': False, 'error': str(e)}
def get_country(self, ip):
"""Get country from IP (simplified)"""
# In production, use a geolocation API
if ip.startswith('192.168') or ip.startswith('10.') or ip.startswith('172.'):
return 'private'
return 'unknown'
def rotate_proxy(self):
"""Get next proxy from queue"""
if self.proxy_queue.empty():
self.refresh_queue()
return self.proxy_queue.get()
def refresh_queue(self):
"""Refresh proxy queue with health-checked proxies"""
self.proxy_queue = queue.Queue()
healthy = []
for proxy in self.proxies:
result = self.health_check(proxy)
if result.get('alive'):
healthy.append(proxy)
self.results[proxy] = result
# Sort by response time (fastest first)
healthy.sort(key=lambda x: self.results[x]['response_time'])
for proxy in healthy:
self.proxy_queue.put(proxy)
print(f"[+] Queue refreshed: {len(healthy)} healthy proxies")
def make_request(self, url, method='GET', **kwargs):
"""Make HTTP request with proxy rotation"""
max_retries = 3
last_error = None
for attempt in range(max_retries):
try:
proxy = self.rotate_proxy()
resp = self.session.request(
method,
url,
proxies={'http': proxy, 'https': proxy},
timeout=15,
**kwargs
)
return {
'status': resp.status_code,
'content': resp.text,
'proxy': proxy,
'attempt': attempt + 1,
}
except Exception as e:
last_error = e
# Mark proxy as failed
self.failed_proxies.append(proxy)
print(f"[-] Proxy failed: {proxy} - {e}")
return {
'status': 0,
'error': str(last_error),
'attempts': max_retries,
}
def batch_requests(self, urls, concurrency=5):
"""Make multiple requests with concurrent proxy rotation"""
results = []
threads = []
def worker(url):
result = self.make_request(url)
results.append(result)
print(f"[+] {url[:50]}... β HTTP {result.get('status')}")
for url in urls:
t = threading.Thread(target=worker, args=(url,))
threads.append(t)
if len(threads) >= concurrency:
for t in threads:
t.start()
threads = []
for t in threads:
t.start()
for t in threads:
t.join()
return results
def export_results(self):
"""Export proxy health results"""
export_data = {
'timestamp': datetime.now().isoformat(),
'healthy_proxies': len([p for p in self.results if self.results[p]['alive']]),
'failed_proxies': len(self.failed_proxies),
'details': self.results,
}
with open(f'proxy_report_{int(time.time())}.json', 'w') as f:
json.dump(export_data, f, indent=2)
print(f"[+] Report saved")
return export_data
if __name__ == "__main__":
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('--file', help='Proxy list file')
parser.add_argument('--test', action='store_true', help='Health check all proxies')
parser.add_argument('--batch', nargs='+', help='URLs to test')
args = parser.parse_args()
rotator = ProxyRotator()
if args.test:
rotator.refresh_queue()
rotator.export_results()
elif args.batch:
results = rotator.batch_requests(args.batch)
for r in results:
print(json.dumps(r, indent=2))
else:
print("Use --test or --batch <urls>")
---
βββ SOCKS PROXY SETUP βββ
Code:
# === TOR SOCKS5 Proxy ===
# Install Tor
sudo apt install tor
sudo systemctl start tor
# Test Tor proxy
curl -x socks5h://127.0.0.1:9050 https://check.torproject.org
# === SSH Tunnel as Proxy ===
# Create dynamic SOCKS proxy via SSH
ssh -D 1080 -C -N user@remote-server.com
# Use with tools
export all_proxy=socks5://127.0.0.1:1080
export https_proxy=socks5://127.0.0.1:1080
export http_proxy=socks5://127.0.0.1:1080
# nmap with SOCKS proxy
nmap -sS --proxy socks5://127.0.0.1:1080 target.com
# sqlmap with proxy
sqlmap -u "http://target.com/page?id=1" --proxy=http://127.0.0.1:8080
# Burp Suite proxy configuration
# Proxy β Options β Add β 127.0.0.1:8080
---
βββ ANONYMITY BEST PRACTICES βββ
Code:
1. NEVER reuse the same proxy for everything
2. Rotate IPs every 5-10 requests
3. Use different User-Agent strings
4. Vary request timing (random delays)
5. Clear cookies between sessions
6. Don't log into accounts while proxying
7. Use VPN + Proxy combination for extra layer
8. Monitor for DNS leaks
9. Test your exit IP regularly
10. Keep proxy list fresh
Browser Fingerprinting Protection:
Code:
# Disable fingerprinting in Firefox
about:config β set these:
privacy.resistFingerprinting = true
privacy.trackingprotection.enabled = true
network.dns.disableIPv6 = true
# Chrome flags
--disable-features=IsolateOrigins,site-per-process
--disable-web-security
--disable-features=EnhanceSecurity
---
βββ PROXY SOURCE OPTIONS βββ
Code:
# === Free Proxy Lists (test only!) ===
curl -s https://api.proxyscrape.com/v2/?request=displayproxies&protocol=http
curl -s https://api.proxyscrape.com/v2/?request=displayproxies&protocol=socks5
# === Commercial Providers (recommended) ===
# Bright Data (Luminati)
# Oxylabs
# Smartproxy
# Rayobyte
# IPRoyal
# === Building Your Own ===
# Rent VPS instances in multiple countries
# Run squid proxy on each
# Use load balancer to rotate
---
βββ QUICK REFERENCE βββ
Code:
# Test if your IP is leaking
curl -s ifconfig.me
curl -s ipinfo.io
curl -s icanhazip.com
# Check Tor connectivity
curl -x socks5h://127.0.0.1:9050 https://check.torproject.org
# nmap with proxy
nmap -sV --proxy socks5://127.0.0.1:9050 target.com
# Using proxychains
proxychains4 nmap -sV target.com
proxychains4 python3 exploit.py
# Docker with proxy
docker run -e http_proxy=http://proxy:8080 -e https_proxy=http://proxy:8080 alpine curl ifconfig.me
---
βββ TL;DR βββ
Code:
β
Use residential proxies for recon
β
Implement automatic rotation
β
Health check all proxies regularly
β
Combine Tor + VPN for maximum anonymity
β
Never reuse IPs across sessions
β
Monitor for DNS leaks
---
What's your proxy setup? Drop your configs below.
Next: Advanced OSINT with Maltego and Shodan.
Last edited by shadow_crawler; 1 hour ago.
[SIG]ββββββββββββββββββββββββββββββββββββββββ
shadow_crawler | Elite Member | Anonymity Specialist
ββββββββββββββββββββββββββββββββββββββββ[/SIG][/b][/b][/b][/b][/b][/b]