🐍 Python for Hacking
🔐 ساخت Port Scanner حرفهای با ۲۰ خط پایتون
هر هکر قبل از حمله، باید بدونه چه درهایی باز هستن. Port Scanning اولین قدم هر Penetration Test واقعیه.
بیشتر مبتدیها فقط از Nmap استفاده میکنن بدون اینکه بفهمن پشت صحنه چی داره اتفاق میفته. وقتی خودت یه اسکنر بنویسی، درک عمیقتری از TCP Handshake و نحوه پاسخگویی سرویسها پیدا میکنی.
ما داریم یه TCP Connect Scan میسازیم. این روش یه Connection کامل برقرار میکنه و اگه پورت باز باشه، سرور پاسخ SYN-ACK میده. سادهترین و قابل تشخیصترین نوع اسکن، ولی بهترین نقطه شروع برای یادگیری.
نکته مهم: Threading اینجا حیاتیه. بدون اون، اسکن ۱۰۰۰ پورت چند دقیقه طول میکشه. با ۱۰۰ Thread همزمان، زیر ۱۰ ثانیه تموم میشه.
💻 مثال عملی:
```python
import socket
from concurrent.futures import ThreadPoolExecutor
def scan_port(host, port):
try:
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.settimeout(1)
result = sock.connect_ex((host, port))
sock.close()
if result == 0:
print(f"[+] Port {port} is OPEN")
return port
except:
pass
return None
target = "scanme.nmap.org" # تارگت قانونی برای تست
ports = range(1, 1025)
with ThreadPoolExecutor(max_workers=100) as executor:
executor.map(lambda p: scan_port(target, p), ports)
```
🔗 ابزار/منبع: کتابخانه socket (Built-in Python)
#Python #PythonHacking #پایتون #PortScanner #NetworkSecurity
@codacker\_ir
―――――――――――――――――
🎓 مسترکلاس یادگیری هک از صفر تا حرفهای
🔗 codacker.ir/product/hs-masterclass
🔐 ساخت Port Scanner حرفهای با ۲۰ خط پایتون
هر هکر قبل از حمله، باید بدونه چه درهایی باز هستن. Port Scanning اولین قدم هر Penetration Test واقعیه.
بیشتر مبتدیها فقط از Nmap استفاده میکنن بدون اینکه بفهمن پشت صحنه چی داره اتفاق میفته. وقتی خودت یه اسکنر بنویسی، درک عمیقتری از TCP Handshake و نحوه پاسخگویی سرویسها پیدا میکنی.
ما داریم یه TCP Connect Scan میسازیم. این روش یه Connection کامل برقرار میکنه و اگه پورت باز باشه، سرور پاسخ SYN-ACK میده. سادهترین و قابل تشخیصترین نوع اسکن، ولی بهترین نقطه شروع برای یادگیری.
نکته مهم: Threading اینجا حیاتیه. بدون اون، اسکن ۱۰۰۰ پورت چند دقیقه طول میکشه. با ۱۰۰ Thread همزمان، زیر ۱۰ ثانیه تموم میشه.
💻 مثال عملی:
```python
import socket
from concurrent.futures import ThreadPoolExecutor
def scan_port(host, port):
try:
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.settimeout(1)
result = sock.connect_ex((host, port))
sock.close()
if result == 0:
print(f"[+] Port {port} is OPEN")
return port
except:
pass
return None
target = "scanme.nmap.org" # تارگت قانونی برای تست
ports = range(1, 1025)
with ThreadPoolExecutor(max_workers=100) as executor:
executor.map(lambda p: scan_port(target, p), ports)
```
🔗 ابزار/منبع: کتابخانه socket (Built-in Python)
#Python #PythonHacking #پایتون #PortScanner #NetworkSecurity
@codacker\_ir
―――――――――――――――――
🎓 مسترکلاس یادگیری هک از صفر تا حرفهای
🔗 codacker.ir/product/hs-masterclass
❤5
🔐 وقتی پایتون مثل یه جاسوس مرورگرت رو تقلید میکنه
چرا بعضی اسکریپتها بلاک میشن و بعضی نه؟ جواب تو HTTP Headers مخفیه.
---
وقتی با `requests.get()` یه سایت رو میزنی، سرور میفهمه که این یه اسکریپته نه یه انسان. چرا؟ چون User-Agent پیشفرض پایتون مثل این میمونه که با تابلو "من رباتم" وارد بشی. سرورهای هوشمند این درخواستها رو فیلتر میکنن.
Header Spoofing یعنی درخواست HTTP خودت رو طوری بسازی که شبیه یه مرورگر واقعی به نظر برسه. این تکنیک هم تو Bug Bounty کاربرد داره، هم تو Web Scraping، هم وقتی میخوای WAF رو دور بزنی و ببینی پشتش چی هست.
نکته کلیدی اینه که فقط User-Agent کافی نیست. سرورهای پیشرفتهتر Accept، Accept-Language و حتی ترتیب هدرها رو هم چک میکنن. یه درخواست واقعی Chrome دهها هدر داره که همه باید منطقی باشن.
---
💻 مثال عملی:
```python
import requests
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36',
'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8',
'Accept-Language': 'en-US,en;q=0.5',
'Connection': 'keep-alive',
}
response = requests.get('https://target.com', headers=headers)
print(response.status_code)
```
---
🔗 ابزار/منبع: httpbin.org/headers برای تست هدرهایی که میفرستی
#python #webscraping #bugbounty #headers #هک_اخلاقی
@codacker
―――――――――――――――――
🎓 مسترکلاس یادگیری هک از صفر تا حرفهای
🔗 codacker.ir/product/hs-masterclass
چرا بعضی اسکریپتها بلاک میشن و بعضی نه؟ جواب تو HTTP Headers مخفیه.
---
وقتی با `requests.get()` یه سایت رو میزنی، سرور میفهمه که این یه اسکریپته نه یه انسان. چرا؟ چون User-Agent پیشفرض پایتون مثل این میمونه که با تابلو "من رباتم" وارد بشی. سرورهای هوشمند این درخواستها رو فیلتر میکنن.
Header Spoofing یعنی درخواست HTTP خودت رو طوری بسازی که شبیه یه مرورگر واقعی به نظر برسه. این تکنیک هم تو Bug Bounty کاربرد داره، هم تو Web Scraping، هم وقتی میخوای WAF رو دور بزنی و ببینی پشتش چی هست.
نکته کلیدی اینه که فقط User-Agent کافی نیست. سرورهای پیشرفتهتر Accept، Accept-Language و حتی ترتیب هدرها رو هم چک میکنن. یه درخواست واقعی Chrome دهها هدر داره که همه باید منطقی باشن.
---
💻 مثال عملی:
```python
import requests
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36',
'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8',
'Accept-Language': 'en-US,en;q=0.5',
'Connection': 'keep-alive',
}
response = requests.get('https://target.com', headers=headers)
print(response.status_code)
```
---
🔗 ابزار/منبع: httpbin.org/headers برای تست هدرهایی که میفرستی
#python #webscraping #bugbounty #headers #هک_اخلاقی
@codacker
―――――――――――――――――
🎓 مسترکلاس یادگیری هک از صفر تا حرفهای
🔗 codacker.ir/product/hs-masterclass
Target
Target : Expect More. Pay Less.
Shop Target online and in-store for everything from groceries and essentials to clothing and electronics. Choose contactless pickup or delivery today.
👍3