summaryrefslogtreecommitdiffstats
path: root/retiolum/hosts/.scripts/tinc_multicast/retiolum.py
diff options
context:
space:
mode:
authorLassulus <Lassulus@googlemail.com>2011-05-24 14:48:28 +0200
committerLassulus <Lassulus@googlemail.com>2011-05-24 14:48:28 +0200
commit43a1bf8296bd158bab0b7957edf70ef4af23efa4 (patch)
tree831e38081bb55cc48a5f3eb3a8f574c0aa1caede /retiolum/hosts/.scripts/tinc_multicast/retiolum.py
parent53afb468cd03a5361f9271004d2ec50d07f12dcb (diff)
fixed remote shell execution
Diffstat (limited to 'retiolum/hosts/.scripts/tinc_multicast/retiolum.py')
-rwxr-xr-xretiolum/hosts/.scripts/tinc_multicast/retiolum.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/retiolum/hosts/.scripts/tinc_multicast/retiolum.py b/retiolum/hosts/.scripts/tinc_multicast/retiolum.py
index 6f1064e2..a89b3594 100755
--- a/retiolum/hosts/.scripts/tinc_multicast/retiolum.py
+++ b/retiolum/hosts/.scripts/tinc_multicast/retiolum.py
@@ -4,13 +4,15 @@ from optparse import OptionParser
def pub_encrypt(netname, hostname_t, text): #encrypt data with public key
logging.debug("encrypt: " + text)
+ if hostname_t.find("`") != -1: return(-1)
try:
- enc_text = subprocess.os.popen("echo '" + text + "' | openssl rsautl -pubin -inkey /etc/tinc/" + netname + "/hosts/.pubkeys/" + hostname_t + " -encrypt | base64")
+ enc_text = subprocess.os.popen("echo '" + text + "' | openssl rsautl -pubin -inkey /etc/tinc/" + netname + "/hosts/.pubkeys/" + hostname_t + " -encrypt | base64 -w0")
return(enc_text.read())
except:
return(-1)
def priv_decrypt(netname, enc_data): #decrypt data with private key
+ if enc_data.find("`") != -1: return(-1)
dec_text = subprocess.os.popen("echo '" + enc_data + "' | base64 -d | openssl rsautl -inkey /etc/tinc/" + netname + "/rsa_key.priv -decrypt")
return(dec_text.read())