Python实现Flag生成


title: Python实现Flag生成
tags: Python,Flag,攻防


生成Flag

功能:根据不同主机的不同ip地址,在靶机的C盘Flag文件夹中生成Flag.txt文件,为了防止Flag.txt文件被删除,每隔三秒判断一下Flag.txt文件是否存在,不存在就重新生成

# -*- coding:utf-8 -*-
#filename:exist.py

import socket
import hashlib
import os
import time

#获取本地ip地址
localIP = socket.gethostbyname(socket.gethostname())

#创建md5对象
md = hashlib.md5()
#生成加密串
md.update(localIP)
#获取加密串
flag = md.hexdigest()

while True:
    filePath = 'c:\Flag'
    flagFile = 'c:\Flag\Flag.txt'

#判断c盘下是否存在Flag文件夹,没有则创建
    if not os.path.exists(filePath):
        os.mkdir(filePath)
#判断c盘下的Flag文件夹中是否存在Flag.txt文件,没有则创建
    if os.path.isfile(flagFile):
        pass
    else:
        fobj = open('c:\Flag\Flag.txt', 'w')
        fobj.write(flag)
        fobj.close()
    
    time.sleep(3)

将python文件打包成exe可执行文件

参考:http://www.itoldme.net/archives/1242
http://legendtkl.com/2015/11/06/pyinstaller

  • 下载安装pyinstall,其中,Windows上运行PyInstaller还需要PyWin32或者pypiwin32,其中pypiwin32在你安装PyInstaller的时候会自动安装。
    • pip install pyinstall
  • 将.py文件打包成exe文件,-F用于制作独立的可执行程序,-w:不弹出Dos窗口
    • pyinstall -F -w exist.py
  • 运行完成后会在当前目录下生成一个build和dist文件夹,生成的exist.exe文件会输出到dist文件夹中

用其它文件来调用exist.exe

exist.exe根据需要设置为自启动运行,如果直接把exist.exe文件放到启动文件夹或者启动项中,可能会很容易被找到,导致进程直接被kill掉,所以要用其它自启动文件来调用它(当然查看进程后,还是很容易被找到的)


# -*- coding:utf-8 -*-
#filename:start.py

import os

cmd = 'exist.exe'
tmpdir = 'c:\Flag'
os.chdir(tmpdir)
os.system(cmd)

将start.py打包成start.exe放到开启启动项中

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 原文链接 我经常用python写些脚本什么的,有时候脚本写完以后,每次运行都得在IDE打开在运行,很麻烦,所以经常...
    g0阅读 6,188评论 0 2
  • 个人学习批处理的初衷来源于实际工作;在某个迭代版本有个BS(安卓手游模拟器)大需求,从而在测试过程中就重复涉及到...
    Luckykailiu阅读 4,816评论 0 11
  • 一.pyinstaller简介 pyinstaller将Python脚本打包成可执行程序,使在没有Python环境...
    麻瓜编程阅读 31,441评论 3 13
  • 最近一则产妇跳楼的新闻刷遍了朋友圈。无法想象当时那名产妇是怎样的一种心情和感受以至于会如此绝望的选择带着宝宝去跳楼...
    我爱和路雪阅读 327评论 0 0
  • “轰!” 粗壮的银色雷蛇从厚重的云层落下,随之而来的是密集的雨声。 暴雨,冲刷着城市的每一个角落,将城市中那些污垢...
    萧萧不帅阅读 348评论 0 0