情報セキュリティ試合殺しプロセススクリプト


試合はもう終わりましたから、出してください.
既存のプロセスを保護し、新しくなったプロセスを殺す.
#-*- coding:utf-8 -*-
#2018-01-17
#by-duwentao
#version:python 2.7.9
#python2.6.6     

import os
import signal

pid_list=[]

#      
def max_pid():
	f = open("/proc/sys/kernel/pid_max","r")
	pid = int(f.read().strip("
")) f.close() if pid != 1024: print pid # 1024 os.system("echo \"1024\" >>  /proc/sys/kernel/pid_max") else: print "max_pid : 1024" # pid def get_pid(): # , if os.path.exists("pid.txt"): pass else: os.system("ps aux |awk \'{print $2}\' |sed \'s/PID/0/g\' >> pid.txt") # f = open("pid.txt","r") for pid in f.readlines(): pid = int(pid.strip("
")) pid_list.append(pid) f.close() return pid_list def kill_pid(pid_list): self_pid = os.getpid() # pid while True: for i in range(1,1025): if i in pid_list: pass elif (i == self_pid): pass else: try: a = os.kill(i, signal.SIGKILL) print ' pid %s ,  :%s' % (i, a) except: pass def get_ip(): ip5 = int(raw_input(" ip (3 4):").strip("
")) if ip5 == 3 : ip1 = int(raw_input(" ip :").strip("
")) ip2 = int(raw_input(" ip :").strip("
")) ip3 = int(raw_input(" ip :").strip("
")) ip4 = int(raw_input(" ip :").strip("
")) username = raw_input(" :").strip("
") passwd = raw_input(" :").strip("
") for ip3 in range(105,107): ip = str(ip1) + "." + str(ip2) + "."  + str(ip3) + "." + str(ip4) ssh_connect(ip,username,passwd) # elif ip5 == 4: ip1 = int(raw_input(" ip :").strip("
")) ip2 = int(raw_input(" ip :").strip("
")) ip3 = int(raw_input(" ip :").strip("
")) #ip4 = int(raw_input(" ip :").strip("
")) username = raw_input(" :").strip("
") passwd = raw_input(" :").strip("
") for ip4 in range(105,107): ip = str(ip1) + "." + str(ip2) + "."  + str(ip3) + "." + str(ip4) ssh_connect(ip,username,passwd) else: print (" , ") exit() def ssh_connect(ip,username,passwd): try:         #python2.6.6         import paramiko     except:         print " python2.6.6 paramiko " try: ssh = paramiko.SSHClient()         ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())         ssh.connect(ip,username=username,password=passwd,timeout= 1 )         #os.system(" echo centos | passwd --stdin root")         #  root centos         f=open('ssh.txt','a')         f.write("ip:%s,username:%s,password:%s
" %(ip,username,passwd))         f.close()         ssh.close() except:        ·pass def menu(): while True: print "\033[32m ------- ------\033[0m" print "\033[32m 1. pid\033[0m" print "\033[32m 2. pid \033[0m" print "\033[32m 3. ssh \033[0m" print "\033[32m 4. pid\033[0m" print "\033[32m 5. \033[0m" try: c =int(raw_input(" :")) except: print "\033[31m your input is wrong \033[0m" continue if c == 1: max_pid() elif (c == 2): get_pid() elif ( c == 3 ): get_ip()  elif (c == 4): kill_pid(pid_list) elif ( c == 5 ): exit() else: print "\033[31m your input is wrong \033[0m" if __name__ == '__main__': print(" , ") menu()