Python十几行代码获取db库新增的poc

1.背景介绍

由于项目需要及个人爱好,我每个月都要下载exploit-db库上的压缩包,更新到自己的漏洞平台上。然而,,在以前都是把exploit的整个文件夹通过远程桌面传到服务器上,由于这个文件夹非常的大,导致每次都需要好长时间才能传完,所以,就想着写个脚本光收集上个月新增的poc。

2.利用工具

Python2.7的os和sys库

3.脚本

首先,db库提供了特别便利的方式,它会有一个excel文件存储漏洞信息,包括poc的文件路径,所以,只要把新增的那些信息放在一个txt文本中,再根据路径重新生成新增的poc文件就可以了。下面的特别简洁的脚本:

#coding:utf-8
import os
import sys
with open(r'files.txt') as f:       #里面是csv中新增的漏洞信息
    for line in f:
        dbid,file, description,date,author,use_type,platform,port = line.split('\t')
        name = 'exploit-database-master/'+file     #所有poc文件存放的文件夹      
        n_name = 'file/'+file        #新增的poc文件存放的文件夹
        path = os.path.split(n_name)[0]    #返回新增的poc存放的路径
        if os.path.exists(path):
        	print 'exists'
        else:
        	os.makedirs(path)    #路径不存在则新建路径
        open(n_name, "wb").write(open(name, "rb").read())     #读取原来的poc再重新写到新的文件夹下

原文地址:http://blog.51cto.com/chichu/2108130

时间: 2024-10-01 21:53:53

Python十几行代码获取db库新增的poc的相关文章

Use My Python,Send Your Mail(十来行代码)

人生苦短,我用python,最近实习一直在用工作,因为我做的工作涉及到海量数据,程序跑下来用上代理,一个月可能也跑不完,但是我快要回去考试两周,作为一个强迫症的coder,我必须要得知我的程序怎么了!!!所以我让我的程序成功执行一段时间,但是我又是非常"懒惰"的人(其实优秀的程序员都要很"懒惰"呢!坚决写简洁的代码,如果可以,越短越好,所以前短时间写了个160行的py 2048.),看了好多版本,看得我很郁闷呢-最后经过整理,得出这十行,送你! import smt

在HTML5全栈开发中用十几行代码做贪吃蛇

教你如何在HTML5全栈开发中用十几行代码做出贪吃蛇,直接上源码: <!DOCTYPE html><html><body><canvas id="myCanvas" width="240" height="240" style="border:1px solid #d3d3d3;">Your browser does not support the HTML5 canvas ta

Python实现3行代码解简单的一元一次方程

Python实现3行代码解简单的一元一次方程 class Solution(object): def exec(self, equation): vars = None eqList = list(equation) denth = 0 for i,each in enumerate(equation): if each in "abcdefghijklmnopqrstuvwxyz": vars = each if i == 0: continue if equation[i-1] i

谷歌为什么把上十亿行代码都放在一个仓库里

相对于一般公司,Google 使用了单一代码仓库,很多人不理解为什么这么做.本文作者是谷歌基础设施小组的工程师,他对这个问题进行了详细解读. 早期 Google 员工决定使用集中式源代码管理系统来管理代码库.这种方法已经在 Google 运行了 16 年以上,而今天绝大多数的 Google 软件仍然存储在一个共享的代码库中. 随着 Google 开发软件数量稳步增加,Google 代码库的规模也呈指数增长. 因此,用于管理代码库的技术也发生了显著变化. 本文概述了该代码库的规模,并详细介绍了 G

Android简易实战教程--第十二话《代码获取手机总运行内存的大小》

手机RAM存储,类似于电脑的内存.这一篇,对通过代码获取手机总内存大小做详细介绍. 首先,定义一个engine类,这个类功能就是获取进程信息,包括运行的程序个数,系统总内存,系统剩余总内存.本篇先完成获取总内存. 代码如下: public class TaskManagerEngine { //获取总内存大小 public static long getTotalMemorySize(Context context){ long size = 0; //获取ActivityManager管理,要

JavaScript12行代码获取相关节点

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title></title> </head> <body> <div id="dv"> <span>这是div中的第一个span标签</span> <p>这是div中的第二个元素

5行代码获取小程序用户的手机号

最近有很多同学有获取小程序用户手机号的需求.其实云开发出现之前我们获取小程序用户的手机号特别繁琐.自从有了云开发,我们获取用户手机号变得非常简单.只需要5行代码即可. 老规矩,我们先来看下效果图 再来看下核心的代码,其实只有下面这一些.甚至可以说核心代码只有上图红色框里的两行.是的,你没听错,只靠这2行代码,就可以轻松的获取用户小程序绑定的手机号.下面我们就来具体讲解吧. 注意:只有企业小程序才可以获取用户手机号,个人小程序没有办法获取的. 一,首先要用到button组件的开发能力 编写wxml

学会python可以上天!20行代码获取斗鱼平台房间数据,就是这么牛逼!

Python(发音:英[?pa?θ?n],美[?pa?θɑ:n]),是一种面向对象.直译式电脑编程语言,也是一种功能强大的通用型语言,已经具有近二十年的发展历史,成熟且稳定.它包含了一组完善而且容易理解的标准库,能够轻松完成很多常见的任务.它的语法非常简捷和清晰,与其它大多数程序设计语言不一样,它使用缩进来定义语句. Python支持命令式程序设计.面向对象程序设计.函数式编程.面向切面编程.泛型编程多种编程范式.与Scheme.Ruby.Perl.Tcl等动态语言一样,Python具备垃圾回收

酷毙了!python用37行代码打造属于自己的音乐播放器,附源码

想不想手动打造一款专属于你的播放器,同时练练Python编程? 如果想,那就立即行动吧! 所需库pygametkintermutagen 至于它们的使用,可以浏览一下文档,如果你想做更功能强大的播放器,那必须好好看看哦! 设计思路作为版本0,我们并不想做太复杂的项目.只需实现以下几个功能: 将某个目录下的mp3文件名在listbox中显示 显示当前播放的歌曲名 播放上一首歌曲 播放下一首歌曲 停止播放 获取目录下的mp3文件直接上代码! def directorychooser():direct