summaryrefslogtreecommitdiffstats
path: root/tools/sploit/sploitutil.py
diff options
context:
space:
mode:
authordusoleil <howcansocksbereal@gmail.com>2021-08-02 00:36:28 -0400
committerdusoleil <howcansocksbereal@gmail.com>2021-08-03 19:45:57 -0400
commitaa9da0f6f27759f5f3201bafb0e52f41367f08ef (patch)
treed3f748eeb0112205bb7784bd353b22376ee827ae /tools/sploit/sploitutil.py
parent4338f0862dae3b33862bb32c5dd9fc2eb5f6f90a (diff)
downloadlib-des-gnux-aa9da0f6f27759f5f3201bafb0e52f41367f08ef.tar.gz
lib-des-gnux-aa9da0f6f27759f5f3201bafb0e52f41367f08ef.zip
Adding Initial Commit of the Sploit Tool
Signed-off-by: dusoleil <howcansocksbereal@gmail.com>
Diffstat (limited to '')
-rwxr-xr-xtools/sploit/sploitutil.py34
1 files changed, 34 insertions, 0 deletions
diff --git a/tools/sploit/sploitutil.py b/tools/sploit/sploitutil.py
new file mode 100755
index 0000000..00d2151
--- /dev/null
+++ b/tools/sploit/sploitutil.py
@@ -0,0 +1,34 @@
+#!/usr/bin/env python3
+
+import sploitconfig as config
+from sploitlog import sploitlog
+
+def btoi(b):
+ return int.from_bytes(b,'little')
+
+def itob(i):
+ return i.to_bytes(8,'little',signed=True)
+
+class Libc:
+ def __init__(self,libc_addr,libc_offset):
+ self.libc_base = btoi(libc_addr)-btoi(libc_offset)
+ def base(self):
+ return itob(self.libc_base)
+ def addr(self,offset):
+ return itob(self.libc_base + btoi(offset))
+
+def log(s):
+ if config.use_popen:
+ sploitlog(s)
+
+class Communication:
+ def __init__(self,stdin,stdout):
+ self.stdin = stdin
+ self.stdout = stdout
+ def send(self,s):
+ self.stdout.write(s)
+ self.stdout.flush()
+ def recv(self):
+ out = self.stdin.readline()
+ log(out)
+ return out