*本文原创作者:grt1stnull,本文属FreeBuf原创奖励计划,未经许可禁止转载

感谢hanc00l爬取了wooyun的网页,才使乌云关闭后,大家依旧可以访问以前的漏洞库、知识库。hanc00l发布了基于flask或者torndo的乌云公开漏洞、知识库搜索的github项目,同时发布了已经配置好的虚拟机,允许大家直接把乌云搭建在了本地。

为了方便的在本地进行乌云搜索,我准备把乌云搜索搭建在树莓派上。但是,hanc00l使用的数据库是mangodb,总数据在6GB左右。32位的mangodb支持的总共数据大小最大是2GB,而我的树莓派正是32位,所以我没办法在树莓派上布置。于是利用静态的乌云漏洞库、知识库,我自己建立了数据库、搜索页面,实现了可在apache、nginx等上布置,基于mysql数据库的乌云知识库、漏洞库搜索项目。

我的项目使用python依次处理静态页面,用正则抽取出信息再批量插入数据库;之后又写了个php,实现了对数据库的搜索。

二.python的经验分享

我在python中利用的扩展库是BeautifulSoup与MySQLdb。关于这两个库的介绍有很多,下面我主要介绍下我对这两个库的操作。

1)beautifulsoup的使用from bs4 import BeautifulSoup #引用库

soup=BeautifulSoup(html,"html.parser") #创建BeautifulSoup对象,html为目标

corps=soup.find_all('p',class_='words') #从对象中查找类名为words的p的标签

大家可以输出一下试试

2)MySQLdb的使用import MySQLdb #引用库

try: #错误处理

conn=MySQLdb.connect(host='localhost',port=3306,user='root',passwd='',db='wooyun',charset='utf8') #建立连接,host主机、port端口(默认3306)、user用户、passwd密码、db操作的库、charset字符编码

cur=conn.cursor() #获取操作游标

reload(sys)

sys.setdefaultencoding('utf-8') #设置编码

tmp=(title1,date1,author1[0],type1[0],corp1[0],docs) #要插入的数组

cur.execute("INSERT INTO `bugs`(`title`,`dates`,`author`,`type`,`corp`,`doc`) VALUES(%s,%s,%s,%s,%s,%s)",tmp) #插入数据库

conn.commit() #提交操作,插入时不可省

cur.close()

conn.close() #关闭连接,释放资源

except MySQLdb.Error,e:

print "Mysql Error %d: %s" % (e.args[0], e.args[1]) #如果出错,输出错误

对于mysql不是很熟悉的同学如果有phpmyadmin的话可以在phpmyadmin中操作一下数据库,可以预览mysql语句。也可以在mysql命令行中执行语句尝试。

三.php的经验分享

虽然以前一直会php和css,但是这是第一次真正写一个动态页面。

首先对参数进行过滤。判断是否为整数数字:if(is_numeric($_GET['page'])&&is_int($_GET['page']+0)){

#code

}

php中标签的输出是这样的!echo "

haha

";

bootstrap很好用!

推荐链接:

php对数据库的处理:

现在版本的php不再推荐MYSQL函数了,建议使用PDO或者mysqli

本来想使用pdo的,想感受一下预处理。但是pdo会对参数中的某些字符进行转义。无论我怎么处理都会报错,最终我决定使用mysqli了。//mysql建立连接

$db=new mysqli('localhost','root','','wooyun'); //localhost:3307

//sql对象错误检查

if(mysqli_connect_errno()){

echo '
Error:Please try again later.';

exit();

}

参数如上,不解释了。host有两种方式,默认端口是localhost;指定端口是localhost:3307$query0="SELECT count(*) FROM `".$kind."` WHERE `title` LIKE '%".$keywords."%'"; #mysql语句

$num=$db->query($query0); #执行该语句

$row=$num->fetch_row(); #取得结果

四.后记

在课业之余用了10天时间搭建完成,见识了很多扩展,很有帮助。

*本文原创作者:grt1stnull,本文属FreeBuf原创奖励计划,未经许可禁止转载

php漏洞 乌云,灵活布置、可二次开发的乌云公开漏洞及知识库搜索相关推荐

  1. 谷歌漏洞披露规则增加30天补丁缓冲期;Reddit 公开漏洞奖励计划

     聚焦源代码安全,网罗国内外最新资讯! 编译:奇安信代码安全卫士 本周,Reddit 宣布在 HackerOne 平台推出公开漏洞奖励计划,最高赏金为1万美元.谷歌 Project Zero 更改漏洞 ...

  2. 微信开发sdk_二次开发微信API更新日志

    微信开发sdk_二次开发微信API更新日志 微信开发sdk_二次开发微信API更新日志 2.6.35 清粉优化 小于1k的图片发送失败的问题 联系人资料新增电话号码和描述 发布2.6.31->2 ...

  3. php漏洞 乌云,GitHub - grt1st/wooyun_search: 乌云公开漏洞、知识库搜索 search from wooyun.org...

    wooyun_search 乌云公开漏洞.知识库搜索 0x00.介绍 灵感来源于hanc00l的github项目wooyun_public wooyun_public基于flask或者tornado, ...

  4. 乌云公开漏洞查询api 查看乌云最新安全漏洞

    通过乌云公开漏洞查询api,查看乌云最新提交/确认/公开/待认领的安全漏洞. 接口名称:乌云公开漏洞查询api 接口平台:api 接口地址:http://op.juhe.cn/wooyun/index ...

  5. 如何选择一个合适的B2B2C商城系统,并能支持灵活的二次开发?

    B2B2C是把"供应商→生产商→经销商→消费者"各个产业链紧密连接在一起.整个供应链是一个从创造增值到价值变现的过程,把从生产.分销到终端零售的资源进行全面整合,不仅大大增强了整体 ...

  6. PHP漏洞利用工具开发,PHPcms二次开发,PHPcms,DEDEcms简单代码审计

    PHP工具开发 文章目录 PHP工具开发 PHP小马 一句话木马 PHP大马分析 实现大马后门 编写大马 PHP的cms二次开发 PHP常见CMS的漏洞分析 PHPstorm调试模式 PHPCMSv9 ...

  7. Rational AppScan 标准版可扩展性和二次开发能力简介

    下载:IBM® Rational® AppScan 标准版  |   Web 应用安全与 IBM Rational AppScan 工具包 获取免费的 Rational 软件工具包系列,下载更多的 R ...

  8. ASP和PHP开源CMS系统,可作为二次开发

    网站内容管理系统(CMS)简单介绍: CMS(Content Management System),译为网站内容管理系统,大概2004以前,如果想进行网站内容管理,基本上都是靠手工维护,但千变万化的信 ...

  9. 从YARN迁移到k8s,滴滴机器学习平台二次开发是这样做的

    整理 | 夕颜 出品 | AI科技大本营(ID:rgznai100) [导读]人工智能时代,机器学习已经渗透进每个领域,改变了这些领域的业务模式.技术架构以及方法论.随着深度学习技术近年来快速发展,高 ...

最新文章

  1. 【错误记录】执行 Python 程序报错 ( NameError: name ‘reload‘ is not defined )
  2. 《编写高质量代码:改善C#程序的157个建议》勘误表
  3. 10个关于人工智能和机器学习的有趣开源项目
  4. TransactionProducer(事务消息)
  5. OS- -文件系统(一)
  6. spring mvc 返回json数据的四种方式
  7. 通过python 爬取网址url 自动提交百度
  8. 玩转 SpringBoot 2 之发送邮件篇
  9. socket.io插件调用的demo
  10. 算法与数据结构1800题 树和二叉树
  11. 2021年下半年软考信息安全工程师下午案例题及解析
  12. 好看的皮囊 · 也是大自然的杰作 · 全球高质量 · 美图 · 集中营 · 美女 · 2017-08-29期...
  13. 基于Zookeeper实现简易的负载均衡
  14. python实现中文数字转为阿拉伯数字
  15. CSS——去除iframe边框
  16. mysql数据库中 join 和 left join 的区别
  17. notion函数_高效工作必备,手把手教你玩转 Notion 模板(附下载)
  18. 小米投的力玄运动冲刺上交所:拟募资20亿 吴银昌家族色彩浓厚
  19. dbeaver 设置编码_宝鼎伺服马达编码器磨损维修
  20. iTunes的资料库中没有书籍(图书)选项的解决方法

热门文章

  1. 压力测试ab安装 linux,Centos8下安装ab压力测试工具及ab命令详解
  2. 密钥交换算法(DH算法)
  3. OFFICE 365 EXCEL 新函数
  4. Hash(哈希)选做
  5. 打不开<dirent.h>和<<unistd.h>>
  6. PHP版]个人精美网站系统
  7. 计算机组装与维护双系统安装,怎么装双系统win7和win10?怎么装双系统教程
  8. 基于Java的客户管理系统的设计与实现
  9. 130个免费 微信小程序源码分享
  10. html js音乐歌词滚动,如何用html+js实现音乐歌词同步播放器