关于Exploit-DB漏洞库的使用


之前在网上看到了不少介绍如何升级BackTrack和Kail Linux上的Exploit-DB漏洞利用库的文章,觉得不错,很受用,有时候就想了,能不能把这个功能放到Ubuntu等其他的Linux上去。

于是,就去虚拟机中的BackTrack中看看:

先切换到“/pentest/exploits/exploitdb/”目录,查看目录结构.vim查看其中的searchsploit文件(其实就一可执行的Shell脚本文件),再查看相关联的file.csv文件(其实就一个漏洞记录说明文件,csv格式的,方便使用awk等工具处理)。我们可以发现searchsploit其实就是一个简单的shell脚本,用来处理file.csv文件里面的内容的。如果你懂得一点 bash编程的话,就可以轻松了解“./searchsploit item1 [item2] [item3]”的原理和方法啦

接下我们在ubuntu下创建Exploit-DB漏洞利用库,步骤如下:

1、wget最新版本的“Exploit-DB漏洞利用库”,命令:

wget www.exploit-db.com/archive.tar.bz2

如果被墙了的话 ,去http://www.exploit-db.com上下载即可

2、解压,将其中的file.csv文件、platforms文件夹和searchsploit脚本放在Ubuntu上的一个文件夹中即可。

3、修改searchsploit脚本中的一些内容;

====

具体的searchsploit脚本内容如下:

#!/bin/bash
# exploitdb CLI search tool

csvpath=./files.csv     #修改file.csv的路径以正常使用"./searchsploit"命令

USAGE="Usage: `basename $0` [term1] [term2] [term3]
Example: `basename $0` oracle windows local

Use lower case in the search terms; second and third terms are optional.
`basename $0` will search each line of the csv file left to right so order your search terms accordingly.
(ie: 'oracle local' will yield better results than 'local oracle')"

if [ $# -eq 0 ]; then
    echo -e $USAGE >&2    #其中的"-e"选项是为了将原脚本中变量$USAGE中的"n"解释出来
    exit 1
fi

echo " Description Path and Date"
echo --------------------------------------------------------------------------- -------------------------

awk -F ""*,"*" '{printf "%-75s %sn", $3, $2, $4}' $csvpath | awk 'tolower($0) ~ /'$1'/ && /'$2'/ && /'$3'/' | sed s/platforms//
# 我多加了一个显示“日期”的功能,方便知道这是什么时候爆出来的,自己可以估计一下可用性还有多少
# {awk -F ""*,"*"}这里的意思应该是:以,或",或,"为“分隔符”,终于明白了,还是自己最给力;
# awk 'tolower($0) ~ /'$1'/ && /'$2'/ && /'$3'/' 将$0转换为小写,然后与"$1"|"$2"|"$3"进行短路匹配;
# 最后的"sed s/platforms//"是将匹配结果中的"platforms"给去掉。

# searchsploit这个脚本主要是利用了awk对file.csv文件中的漏洞名称进行快速搜索匹配,然后给出搜索的结果,并且与file.csv文件的内容结构紧密相关(如下所示)

# 在输出显示的时候,有75列"-"用于分隔漏洞名称那一列,之所以取75列是因为大多数“漏洞名称”都在75个字符以下,不会引起换行(当然有少量特例除外)
#---------------------------------

差不多就这样了,需要注意的一点就是,解压出的文件内容中可能会被(应该是肯定)杀毒软件报警提示,原因嘛,你应该懂的,这么多exploit脚本,如果不报的话,这个杀软是不是会有点问题?

PS:其实看了脚本之后你也应该已经知道,如果仅仅只是查询漏洞的话,有file.csv文件和searchsploit脚本就够了,但因为你在找到了Exploit-DB上爆出的漏洞时,需要看看exp或poc代码,所以,一般情况下你需要下载整个压缩包(http://www.exploit-db.com/archive.tar.bz2)。

原文地址:

关于Exploit-DB漏洞库的使用 http://www.91ri.org/7276.html

说明:这是我之前投稿在http://www.91ri.org/上面的文章,所以这时转载过来放在blog里面做个参考备份~


《 “关于Exploit-DB漏洞库的使用” 》 有 17 条评论

  1. Linux kernel DCCP double-free 权限提升漏洞(CVE-2017-6074)
    https://ma.ttias.be/linux-kernel-cve-2017-6074-local-privilege-escalation-dccp/
    `
    $ lsmod | grep dccp
    $ cat /proc/modules | grep dccp
    $ modinfo dccp #查看模块的详细信息
    `
    Use-after-free in the IPv6 implementation of the DCCP protocol in the Linux kernel – CVE-2017-6074
    https://access.redhat.com/security/vulnerabilities/2934281
    https://access.redhat.com/sites/default/files/cve-2017-6074-2.sh

  2. 根据CVE查信息,最靠谱的还是 http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-8890
    然后去SecurityFocus看对应的信息 http://www.securityfocus.com/bid/98562
    其它的比如 `nvd.nist.gov` 感觉还是有点坑。

    如果要查某个CVE对 RedHat/CentOS 是否有影响,最好的还是去红帽官方的「Red Hat CVE Database」:
    https://access.redhat.com/security/security-updates/#/cve
    比如:
    https://access.redhat.com/security/security-updates/#/cve?q=8890&p=1&sort=cve_threatSeverity%20desc&rows=10&documentKind=Cve

  3. minimal script to help find script into the nse database
    https://github.com/JKO/nsearch
    `
    [root@ixyzero ~]# which nmap
    /usr/local/bin/nmap
    [root@ixyzero ~]# rpm -qf /usr/local/bin/nmap
    file /usr/local/bin/nmap is not owned by any package
    [root@ixyzero ~]# echo $?
    1
    [root@ixyzero ~]# find / -type d -iname “nmap”
    /usr/local/lib/python2.7/site-packages/nmap
    /usr/local/share/nmap
    [root@ixyzero ~]# ll /usr/local/share/nmap
    total 8708
    -rw-r–r– 1 root root 10556 Jun 30 13:02 nmap.dtd
    -rw-r–r– 1 root root 582202 Jun 30 13:02 nmap-mac-prefixes
    -rw-r–r– 1 root root 4754411 Jun 30 13:02 nmap-os-db
    -rw-r–r– 1 root root 14218 Jun 30 13:02 nmap-payloads
    -rw-r–r– 1 root root 6703 Jun 30 13:02 nmap-protocols
    -rw-r–r– 1 root root 49657 Jun 30 13:02 nmap-rpc
    -rw-r–r– 1 root root 2366377 Jun 30 13:02 nmap-service-probes
    -rw-r–r– 1 root root 997294 Jun 30 13:02 nmap-services
    -rw-r–r– 1 root root 31936 Jun 30 13:02 nmap.xsl
    drwxr-xr-x 3 root root 4096 Jun 30 13:02 nselib
    -rw-r–r– 1 root root 48211 Jun 30 13:02 nse_main.lua
    drwxr-xr-x 2 root root 28672 Jun 30 13:02 scripts #Nmap扫描脚本的存放目录
    [root@ixyzero ~]#
    `

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注