Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
slopShell — Die einzige PHP-Webshell, die du brauchst. | Kitploit
Tools/GitHubGitHub/oldkingcone/slopshell
Verschlüsselungs-/EntschlüsselungstoolsPayload-GenerierungPersistenzmechanismenPost-ExploitationPenetrationstestsCommand and ControlLernen & BildungRed TeamingRemote-Access-Tool
GitHuboldkingcone/slopshell

slopShell

Die einzige PHP-Webshell, die du brauchst.

23037vor 1 JahrVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
Repository anzeigenWebseite

GitHub forks GitHub stars GitHub watchers GitHub issues language language language BuyMeACoffee

slopShell

PHP-Webshell

Da ich einen Fehler gemacht und vergessen habe, über die Nutzung zu sprechen. Hier kommt es.

Damit diese Shell funktioniert, brauchst du zwei Dinge: ein Opfer, das PHP-Datei-Uploads erlaubt (du selbst in einer Lernumgebung) und eine Möglichkeit, HTTP-Anfragen an diese Webshell zu senden (das Client-Skript ist die absolut beste Art, mit dieser Shell zu kommunizieren).

Vielen Dank für die ganze Unterstützung der Community, das bedeutet uns viel. Nun zu den Dingen, die dieser Shell hinzugefügt werden, um sie noch großartiger zu machen.

  • Gegenseitiges TLS mit der Möglichkeit, bei Bedarf eine CA zu generieren (falls das möglich ist)
  • Verfeinerter Dropper/Shell selbst, um sicherzustellen, dass die Shell nicht für längeren Zugriff gefunden wird.
  • Zukünftige Ausgaben werden Zugriff auf eine persönliche Datenbank von Cloud-Entitäten haben, im Grunde mein persönlicher Shodan. Dafür wird eine Gebühr erhoben (sorry).

Aktuelles VT-Erkennungsverhältnis: 2/59 (neueste Version)

Virus Total

Aktuelles VT-Erkennungsverhältnis (verschleierte Version): 1/59 //Dies ist eine verfeinerte Version des abgespeckten Droppers. Die Gesamtdateilänge liegt knapp unter 2 KB. Slopshell weist jetzt korrekt einen zufälligen User-Agent mit einem korrekten User-Agent-Wert zu, d.h. einen echten User-Agent wie Mozilla, Opera, Chrome, Chromium usw.

Virus Total

Das Problem mit dieser Erkennung ist, dass ich noch keinen gangbaren Workaround für das Schlüsselwort eval gefunden habe. Wenn es keinen Aufruf von eval gäbe, wäre dieses Skript unerkennbar.


Einrichtung

Ok, los geht's Leute, ich hatte das Bedürfnis, etwas in PHP zu schreiben, also ist es das hier. Diese Webshell hat ein paar Spielereien, und jeden Tag kommen mehr dazu. Du brauchst einen PostgreSQL-Server, den du kontrollierst. Wie du das umsetzt, bleibt dir überlassen.

Debian: apt install -y postgresql php php-pear python3-pip php-readline php-curl libsodium libsodium-dev && python -m pip install proxybroker --user

RHEL-Systeme: dnf -y -b install postgresql-server postgresql php php-pear python3-pip php-readline php-curl libsodium libsodium-devel && python -m pip install proxybroker --user

WIN: Installiere das PHP-MSI und stelle sicher, dass du einen aktiven PostgreSQL-Server hast, zu dem du eine Verbindung herstellen kannst.

Sobald du diese richtig eingerichtet hast und bestätigen kannst, dass sie laufen. Ein Befehl, den ich empfehle, ist die Verwendung von pg_ctl; du kannst damit die DB erstellen oder zumindest initialisieren und starten. Dann funktionieren alle DB-Abfragen einwandfrei.

Du musst in /lib/ gehen und composer install ausführen, um die serverseitigen Abhängigkeiten zu installieren, die für den Client benötigt werden. Der Client läuft jetzt viel schneller als zuvor.


Credits für die Ausführungsmethoden

Dir wird auffallen, dass es sich um eine Neugestaltung eines anderen Wordpress-Backdoors handelt. Sobald ich das Repo wiederfinde, werde ich sicherstellen, dass die Funktion zur Ausführung von Befehlen, die in diesen Shells vorhanden ist, Anerkennung bekommt. Ich mag es nicht, Code zu klauen, und glaube, dass Anerkennung gegeben werden muss, wo sie hingehört. Danke, mein Herr, du hast mir mit diesem Skript ziemlich geholfen, indem du deine Skripte der Öffentlichkeit zur Verfügung gestellt hast.


Was macht diese Shell einzigartig?

Bei einigen Änderungen dachte ich mir: Warum nicht eine Möglichkeit hinzufügen, dass sich die EIGENTLICHE Shell selbst vor einem weniger aufmerksamen Admin versteckt? Die Code-Ausführungsmethoden wurden bereinigt, das gesamte Skript aufgeräumt. Es wird keine gefälschte 500-Seite mehr angezeigt, da dies zu viel Aufmerksamkeit von einem aufmerksamen Admin erregt (mehr aus meiner Zeit als Admin eines PHP-Dev-Stacks auf einem Server). 500-Fehlermeldungen ziehen viel Aufmerksamkeit auf sich, was bedeutet, dass die Shell eher entdeckt wird. Eine 404-Antwort zieht dagegen viel weniger den Blick des Server-Admins auf sich. Dadurch wird diese Shell selbst viel schwerer zu erkennen und zu finden, zusätzlich zum wechselnden Dateinamen – das Auffinden dieser Shell wird ein absoluter Albtraum sein. Die Anpassung des User-Agents muss noch erfolgen, oder es muss ein eindeutiger Cookie-Wert anstelle des User-Agent-Werts verwendet werden; dieser wird jedoch nicht von mir gesetzt, und ich überlasse erfahreneren Benutzern die Anpassung dieser Shell nach Herzenslust. Wenn dir noch Probleme oder Mängel auffallen (die meisten habe ich behoben und diese Shell größtenteils auf PHP8 aktualisiert; Type Hints kann ich aus Gründen der Abwärtskompatibilität immer noch nicht hinzufügen), öffne bitte ein Issue und lass mich wissen, was nicht stimmt, und ich werde sehen, ob ich es beheben kann. Danke, tue Gutes, bekämpfe das Böse, habe Spaß.

Hier ist, was ich mir für die zusätzlichen Ausweichroutinen einfallen ließ:

  • Die Shell benennt sich dynamisch um (das hat vorübergehend den Client kaputt gemacht; ich habe so viele Dinge im Client zu ändern, aber das ist nur ein Hobbyprojekt.)
  • Die ursprüngliche Datei wird gelöscht, nachdem sie auf die Festplatte geschrieben wurde. Das Skript fügt nun auch einen zufälligen Kommentar am Anfang der Datei hinzu, was die Prüfsumme der Datei komplett ändert und die signaturbasierte Erkennung erheblich erschwert. Nicht polymorph, wäre schön, wenn das in PHP möglich wäre. Vielleicht schreibe ich eine zusätzliche Funktion, um die Position der Funktionen zu randomisieren und zufällige Funktionen an zufälligen Stellen hinzuzufügen.
  • Der Wert der alten Datei und der neue Dateiname werden dem Benutzer in einem Header gemeldet.
  • Die Shell antwortet jetzt auf alles mit HTTP 404, sogar auf gültige Anfragen (ein weiterer Grund, warum das Client-Skript kaputt ist).
  • Ich arbeite noch an den MTLS-Teilen des Client- und Shell-Skripts.
  • Ich habe sie anders benannt als üblich.
  • Einige der zusätzlichen Funktionen wurden neu zugeordnet, sodass sie standardmäßig ausgelöst werden, z. B. OS-Erkennung.
  • Die Möglichkeit wurde hinzugefügt, dass das Skript (wenn das Verzeichnis beschreibbar ist) einen versteckten Ordner erstellt, in dem die hochgeladenen Goodies gespeichert werden können, und darauf verweist.
  • Ich arbeite immer noch am dynamischen Laden und Ausführen von hochgeladenen Skripten.
  • Hey, jetzt prüft das Skript auch auf MTLS-Funktionen! und setzt eine Konstante + erstellt einen Kontext mit bereitgestellten Informationen (ich arbeite immer noch daran, den Kontext zur Kommunikation zu nutzen, aber das kommt langsam. Ich pushe, wenn das richtig funktioniert.)
  • Das Skript prüft jetzt auf ein botseitiges Tor-Binary.
  • Die Shell wird auch die Möglichkeit haben, PGP-Schlüssel zu importieren und zu speichern, wenn du PGP als Verschlüsselungsschema verwenden möchtest.
  • Das Skript prüft jetzt auf benötigte Funktionen, um Sodium zur Ver-/Entschlüsselung zu nutzen. Das Skript kann auch eine Sodium-DLL/ein Shared Object aus dem erstellten .scache-Verzeichnis laden.
  • Das .scache-Verzeichnis ist jetzt im Include-Pfad enthalten, sodass du Funktionen aus diesem Ordner speichern und aufrufen kannst.
  • Juhu!

So wie ich in PHP gewachsen bin, wird auch dieses gesamte Projekt wachsen, und die Klassen werden richtige Klassen mit Namespaces und allem werden. Ich brauche nur etwas Zeit, um den Code an die üblichen Standards der PHP-Entwicklung anzupassen. Ich werde wahrscheinlich eine Möglichkeit hinzufügen, diese Shell selbst als WordPress-Plugin zu verpacken, damit sie auch in WordPress verwendet werden kann (ein richtiges Plugin). Der Client erstellt jetzt richtige WordPress-Plugins, die die init-Funktion der WordPress-Site einhaken. Ich habe dies nicht vollständig getestet. Wenn es also irgendwelche Probleme gibt, öffne bitte ein neues Issue und beschreibe das Problem. Der Aktivator für das WordPress-Plugin ist leer gelassen, da ich nach Möglichkeiten suche, den Aktivator zu einem sicheren/verschlüsselten, eindeutigen Wert zu machen, der nicht repliziert werden kann. Bitte habe Geduld.

Wenn du die cqI-Funktion aufrufst, gibt sie relevantere Informationen aus, anstatt … nun ja, Müll. Beispiel:

root@kitploit:~
Max file uploads: 20
Safemode: cannot set safemode.
File_Uploads: true
Upload Temp Dir: cannot set upload_tmp_dir
Maximum File upload size: 2M
Include Path: .:/usr/share/php8:/usr/share/php/PEAR:/var/www/somesite/html/public/.scache/
---------------- SLOP DEFINES ---------------------
slopMTLS: true
slopEncryption: true
slopOS: LIN
slopShell: bash
slopTor: false
slopPGP: false
.scache full path: /var/www/somesite/html/public/.scache/

Diese haben je nach Ausgabe Farbe: false standardmäßig rot, true standardmäßig grün. Mit kleinen Ausnahmen für slopOS und sloppyshell, diese sind immer grün.


Bilder von Anwendungsfällen

Client-Skript-Nutzung:

Reverse Connection, initiiert vom Client-Skript:

Zufällige Landing Pages:


Zusätzliches

Ich als Maintainer bin in keiner Weise verantwortlich für den Missbrauch dieses Produkts. Es wurde für legitime Penetrationstests/Red-Teaming-Zwecke und/oder für den Bildungswert veröffentlicht. Informiere dich über die geltenden Gesetze in deinem Wohnsitzland, bevor du dieses Skript verwendest, und verstoße nicht gegen das Gesetz, während du es verwendest. Danke und einen schönen Tag noch.

Abgespecktes Dropper-Beispiel:

Da die meisten Server die Fähigkeit blockieren, dass Skripte in das bediente Verzeichnis schreiben (wie es sein sollte), standardisiere ich auf die vollständige Shell. Die WordPress-Version dieser Shell funktioniert weiterhin ordnungsgemäß, sie hakt lediglich die init-Funktion ein, anstatt nur eine im Wind flatternde Shell zu sein.

Tool herunterladen