Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
slopShell — l'unico webshell PHP di cui hai bisogno. | Kitploit
Strumenti/GitHubGitHub/oldkingcone/slopshell
Strumenti di Crittografia/DecrittografiaGenerazione di PayloadMeccanismi di PersistenzaPost-ExploitPenetration TestingCommand and ControlApprendimento e FormazioneRed TeamingStrumento di Accesso Remoto
GitHuboldkingcone/slopshell

slopShell

l'unico webshell PHP di cui hai bisogno.

230371 anno faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi
Vedi RepositorySito web

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

slopShell

php webshell

Dato che ho fatto un errore e ho dimenticato di parlare dell'uso. Ecco.

Per far funzionare questa shell, hai bisogno di 2 cose: una vittima che permetta il caricamento di file PHP (te stesso, in un ambiente educativo) e un modo per inviare richieste HTTP a questa webshell (lo script client è il modo migliore al 100% per comunicare con questa shell).

Grazie per tutto il supporto che la comunità ha dato, significa molto per noi. Ora per le cose che verranno aggiunte a questa shell, per renderla ancora più fantastica.

  • TLS mutuo, con la capacità di generare una CA al volo (se possibile)
  • Dropper/shell più raffinato, per garantire che la shell non venga scoperta per un accesso prolungato.
  • Le edizioni future avranno accesso a un database personale di entità cloud, è fondamentalmente un mio Shodan personale. Sarà richiesto un pagamento per questo (ci dispiace).

Rapporto di rilevamento VT attuale: 2/59 (versione più recente)

Virus Total

Rapporto di rilevamento VT attuale (versione offuscata): 1/59 //Questa è una versione raffinata del dropper ridotto. La lunghezza totale del file è poco meno di 2KB. Slopshell ora assegna correttamente un user-agent casuale con un valore valido, cioè un user-agent reale come Mozilla, Opera, Chrome, Chromium, ecc.

Virus Total

Il problema con questo rilevamento è che non ho trovato una soluzione valida per la parola chiave eval; se non ci fosse alcuna chiamata a eval, questo script sarebbe indistinguibile.


Impostazione

Ok, eccoci qua, c'era una voglia che avevo di scrivere qualcosa in PHP, quindi eccolo. Questa webshell ha qualche campanello e fischietto, e ogni giorno ne vengono aggiunti altri. Avrai bisogno di un server pgsql in esecuzione che controlli. Tuttavia, il modo in cui lo implementi dipende da te.

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

Sistemi RHEL: 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: installa il file msi di php e assicurati di avere un server postgresql attivo a cui connetterti in esecuzione da qualche parte.

Una volta che hai configurato tutto correttamente e puoi confermare che sono in esecuzione, un comando che incoraggio è usare pg_ctl per creare il DB in quel modo, o almeno inizializzarlo e avviarlo. Poi tutte le query al db funzioneranno bene.

Devi eseguire cd /lib/ e poi composer install per installare le dipendenze lato server necessarie affinché il client funzioni. Il client ora è molto più veloce di prima.


Crediti per i metodi di esecuzione

Potresti notare che questi sono un re-skin di un altro backdoor per Wordpress, e quando troverò di nuovo il repository, mi assicurerò di dare credito per la funzione di esecuzione dei comandi presente in queste shell. Non mi piace rubare codice e credo che il credito vada dato dove è dovuto. Grazie, gentile signore, mi hai aiutato molto con questo rendendo i tuoi script disponibili al pubblico.


Cosa rende unica questa shell?

Quindi, mentre facevo alcune modifiche, ho pensato: perché non aggiungere un modo per far sì che la shell stessa si nasconda da un amministratore meno attento. Ho pulito i metodi di esecuzione del codice, ho ripulito l'intero script. Non mostrerà più una falsa pagina 500, poiché attira troppa attenzione da un amministratore attento (soprattutto per la mia esperienza come amministratore di uno stack PHP su un server). I messaggi di errore 500 attirano molta attenzione, il che significa che la shell ha più probabilità di essere scoperta. Una risposta 404, invece, ha molta meno probabilità di attirare l'attenzione dell'amministratore del server. Rendere questa shell molto più difficile da rilevare e trovare, oltre al cambio del nome del file, trovare questa shell sarà un incubo assoluto. La personalizzazione dello User-Agent è ancora qualcosa che deve essere fatta, oppure si dovrà utilizzare un valore unico di cookie al posto del valore User-Agent; tuttavia, non sarà impostato da me e lascerò che gli utenti più esperti personalizzino questa shell a loro piacimento. Ancora una volta, se noti problemi o carenze (la maggior parte le ho risolte e ho aggiornato questa shell a PHP8 per la maggior parte, i type hint non posso ancora aggiungerli per ragioni di retrocompatibilità), per favore apri un issue e fammi sapere cosa c'è che non va, e vedrò di risolverlo. Grazie, fai del bene, combatti il male, divertiti.

Ecco cosa sono riuscito a trovare per le routine elusive aggiunte:

  • La shell si rinomina dinamicamente (questo ha rotto il client per ora, ho così tante cose da cambiare nel client, ma questo è solo un progetto personale.)
  • Il file originale verrà eliminato dopo essere stato scritto su disco; lo script ora aggiunge anche un commento casuale all'inizio del file, cambiando completamente il checksum del file, rendendo la scansione basata su firme molto più difficile, non polimorfico, sarebbe bello se questo potesse essere fatto in PHP. Potrei scrivere una funzione aggiuntiva per randomizzare la posizione delle funzioni e aggiungere funzioni casuali in posizioni casuali.
  • Il valore del vecchio file e il nuovo nome del file verranno segnalati all'utente in un header.
  • La shell ora risponde con HTTP 404 a tutto, anche alle richieste valide. (un altro motivo per cui lo script client è rotto.)
  • Sto ancora lavorando sulle parti MTLS dello script client e della shell.
  • L'ho chiamata in modo diverso rispetto al solito.
  • Ho rimappato alcune delle funzioni extra per farle scattare di default ora, ad esempio il rilevamento del sistema operativo.
  • Aggiunta la possibilità per lo script (se la directory è scrivibile) di creare una cartella nascosta per memorizzare i file caricati e poi farvi riferimento.
  • Sto ancora lavorando sul caricamento dinamico e l'esecuzione degli script caricati.
  • Hey, ora lo script controllerà anche le funzioni MTLS! e imposterà una costante + creerà un contesto con le informazioni fornite. (sto ancora lavorando su come usare il contesto per comunicare, ma sta arrivando. farò un push quando funzionerà correttamente.)
  • Lo script ora controllerà anche la presenza di un binario Tor lato bot.
  • La shell avrà anche la capacità di importare e memorizzare chiavi da PGP, se vuoi usare PGP come schema di crittografia.
  • Lo script ora controllerà le funzioni necessarie per usare sodio per crittografare/decrittografare, e lo script sarà ANCHE in grado di caricare una DLL/oggetto condiviso di sodio dalla directory .scache creata.
  • La directory .scache è ora nel percorso di inclusione, quindi ora puoi memorizzare e chiamare funzioni da quella cartella.
  • evviva!

Man mano che sono cresciuto nel linguaggio PHP, anche l'intero progetto crescerà e le classi diventeranno classi vere, con namespace e tutto. Ho solo bisogno di un po' di tempo per sistemare il codice secondo standard più comuni di sviluppo PHP. Probabilmente aggiungerò un modo per impacchettare questa shell come plugin per WordPress, in modo che possa essere usata anche in WordPress (un vero plugin, peraltro). Il client ora crea veri plugin per WordPress, che agganciano la funzione init del sito WordPress. Non ho testato completamente questo, quindi se ci sono problemi, sentiti libero di aprire un nuovo issue e descrivere il problema che stai riscontrando. L'attivatore per il plugin WordPress è lasciato vuoto, questo perché sto cercando modi per rendere l'attivatore un valore unico e sicuro/crittografato che non possa essere replicato. Per favore sii paziente.

Quando chiami la funzione cqI, stampa informazioni più rilevanti invece che... sai, spazzatura.

root@kitploit:~
Esempio:
Max file uploads: 20
Safemode: impossibile impostare safemode.
File_Uploads: true
Upload Temp Dir: impossibile impostare 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
percorso completo .scache: /var/www/somesite/html/public/.scache/

Questi avranno colore a seconda dell'output, false di default rosso, true di default verde. Con piccole eccezioni per slopOS e slopshell, che sono verdi in ogni caso.


Immagini dei casi d'uso

Utilizzo dello script client:

Connessione inversa avviata dallo script client:

Pagine di atterraggio randomizzate:


Ulteriori informazioni

Io, come manutentore, non sono in alcun modo responsabile per l'uso improprio di questo prodotto. Questo è stato pubblicato per scopi legittimi di penetration test/red teaming e/o per valore educativo. Conosci le leggi applicabili nel tuo paese di residenza prima di usare questo script e non infrangere la legge mentre lo usi. Grazie e buona giornata.

Esempio di dropper ridotto:

Poiché la maggior parte dei server blocca la capacità degli script di scrivere nella directory servita (come dovrebbero), per impostazione predefinita uso la shell completa. La versione WordPress di questa shell funzionerà ancora correttamente, aggancia semplicemente la funzione init invece di essere solo una shell che sbatte al vento.

Scarica lo strumento