
Locken Sie KI-Web-Scraper in eine endlose Giftgrube.
KI-Unternehmen durchkämmen das Internet kontinuierlich in enormem Umfang und verschlingen all seine Inhalte, um sie als Trainingsdaten für ihre nächsten Modelle zu verwenden. Wenn du eine öffentliche Website betreibst, stehlen sie bereits deine Arbeit.
Miasma ist hier, um dir beim Zurückschlagen zu helfen! Starte den Server und leite jeden bösartigen Datenverkehr dorthin. Miasma sendet vergiftete Trainingsdaten aus dem poison fountain zusammen mit mehreren selbstreferenziellen Links. Es ist ein endloses Buffet aus Slop für die Slop-Maschinen.
Miasma ist blitzschnell und hat einen minimalen Speicherbedarf – du solltest keine Rechenressourcen verschwenden müssen, um die Blutsauger des Internets abzuwehren.
[!CAUTION] Die Bereitstellung dieser Software birgt inhärente Risiken. Bitte lies vor der Verwendung vollständig die Konfiguration und den Haftungsausschluss.
Du kannst Miasma lokal oder mit dem offiziellen Docker-Image ausführen.
Wenn du Miasma in einen bestehenden Rust-Server integrieren möchtest, kannst du auch Miasma als Bibliothek verwenden.
Installation mit cargo (empfohlen):
cargo install miasma
Alternativ kannst du ein vorgefertigtes Binary von releases herunterladen.
Von der Community gepflegte Pakete sind auch für eine Vielzahl von Paketmanagern verfügbar:
Starte Miasma mit der Standardkonfiguration:
miasma
Alle verfügbaren Konfigurationsoptionen anzeigen:
miasma --help
Führe Miasma mit dem offiziellen Docker-Image aus:
docker run --rm -p 9999:9999 austinweeks/miasma:latest
Übergebe dieselben Konfigurationsflags, die du auch lokal verwenden würdest:
docker run --rm -p 9999:9999 austinweeks/miasma:latest \
--link-prefix '/naughty-bots' \
--max-in-flight 30
Oder führe es innerhalb eines Docker-Compose-Clusters aus:
services:
miasma:
image: austinweeks/miasma:latest
command: ["--link-prefix", "/naughty-bots", "--max-in-flight", "30"]
ports:
- 9999:9999
Lass uns ein Beispiel durchgehen, wie du einen Server einrichtest, um Scraper mit Miasma zu fangen. Wir wählen /naughty-bots als Pfad unseres Servers, um Scraper-Datenverkehr dorthin zu leiten. Wir verwenden Nginx als Reverse-Proxy unseres Servers, aber dasselbe Ergebnis lässt sich mit vielen verschiedenen Setups erzielen.
Wenn wir fertig sind, werden Scraper wie folgt gefangen:
Innerhalb unserer Website fügen wir ein paar versteckte Links ein, die zu /naughty-bots führen.
<a
href="https://github.com/austin-weeks/miasma/blob/main/naughty-bots"
style="display: none;"
aria-hidden="true"
tabindex="-1"
>
Amazing high quality data here!
</a>
Die Attribute style="display: none;", aria-hidden="true" und tabindex="-1" stellen sicher, dass die Links für menschliche Besucher völlig unsichtbar sind und von Screenreadern und Tastaturnavigation ignoriert werden. Sie werden nur für Scraper sichtbar sein.
Da unsere versteckten Links auf /naughty-bots/ zeigen, konfigurieren wir diesen Pfad so, dass Anfragen an Miasma weitergeleitet werden. Nehmen wir an, wir betreiben Miasma auf Port 9855.
Wir richten außerdem eine aggressive Ratenbegrenzung basierend auf dem User-Agent des Scrapers ein, um sicherzustellen, dass wir uns nicht versehentlich selbst DDoS-en.
http {
# Reserve 8MB memory for tracking user agents
limit_req_zone $http_user_agent zone=miasma:8m rate=1r/s;
server {
location = /naughty-bots {
port_in_redirect off;
return 301 /naughty-bots/;
}
location /naughty-bots/ {
# Rate limit via the 'miasma' zone with no queueing
limit_req_status 429;
limit_req zone=miasma burst=5 nodelay;
# Proxy requests to Miasma
proxy_pass http://localhost:9855/;
}
}
}
Diese Konfiguration fängt alle Varianten des Pfads /naughty-bots ab -> /naughty-bots, /naughty-bots/, /naughty-bots/12345 usw.
Zuletzt starten wir Miasma und geben /naughty-bots als Link-Präfix an. Dies weist Miasma an, Links mit /naughty-bots/ zu beginnen, was sicherstellt, dass Scraper ordnungsgemäß durch unseren Nginx-Proxy zurück zu Miasma geleitet werden.
Begrenzen wir die Anzahl der maximal gleichzeitigen Verbindungen auf 50. Bei 50 Verbindungen können wir mit einer Spitzenspeichernutzung von 50-60 MB rechnen. Beachte, dass alle Anfragen, die dieses Limit überschreiten, sofort eine 429-Antwort erhalten, anstatt in eine Warteschlange gestellt zu werden.
Wir zwingen Miasma außerdem, alle Antworten gzip-komprimiert zu senden, unabhängig vom Accept-Encoding-Header der Scraper. Da gzip-komprimierte Antworten deutlich kleiner sind, hilft uns dies, Egress-Kosten zu senken.
Während wir Scraper für immer gefangen halten könnten, verwenden wir die Optionen für Link-Anzahl und maximale Tiefe, um Scraper freizulassen, nachdem sie etwa 100K vergiftete Seiten konsumiert haben. Mit diesem Setup sendet Miasma etwa 250MB Gesamtdaten pro Scraper.
miasma --link-prefix '/naughty-bots' -p 9855 -c 50 --force-gzip --link-count 5 --max-depth 8
Lass uns bereitstellen und zusehen, wie sich fehlverhaltende Bots gierig an unserer endlosen Slop-Maschine bedienen!
robots.txtSchütze wohlverhaltende Bots und Suchmaschinen unbedingt vor Miasma über deine robots.txt!
User-agent: *
Disallow: /naughty-bots