问题描述
我有一个字符串形式的单行加密代码,以及一个解码并执行该加密代码的函数(该代码建立与网络中另一台计算机的后门连接,但这在这里不是很重要)。代码运行时,程序不会继续执行下一行,因为代码不会停止(为了保持连接有效)。
我想做的是将代码运行10秒钟,然后终止它,然后重新运行它。
但是我无法终止代码,因为它是加密的并且无法更改。我以为我可以在一个单独的线程上运行它,然后在10秒后强行终止它,但是问题是Internet上提到的所有解决方案都需要对加密代码进行一些更改。
Python似乎没有办法在n秒后强行关闭正在运行的线程,这很容易解决我的问题。
以下代码演示了我的问题:
import threading,time
encrypted_code = ")'cba'(tnirp :eurT elihw"
def decrypt_and_execute(encrypted_code):
exec(encrypted_code[::-1])
def run(encrypted_code,run_time):
my_thread = threading.Thread(target=decrypt_and_execute,args=(encrypted_code,))
my_thread.start()
time.sleep(run_time)
# CODE TO STOP 'my_thread' without changing 'encrypted_code' NEEDED HERE#
while True:
threading.Thread(target=run,10)).start()
time.sleep(10)
以上是我尝试的解决方案(此处的加密代码是一个无限的while循环,一直打印abc)。 我尝试在不关闭整个应用程序的情况下停止“ my_thread”的任何代码均无效。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)