在我们的GitHub上的Exploit Database存储库中包含一个名为"searchsploit"的Exploit-DB的命令行搜索工具,该工具还允许您在任何地方随身携带一个Exploit Database的副本。SearchSploit使您可以通过本地签出的存储库副本执行详细的脱机搜索。这种能力对于没有互联网接入的隔离或空隙网络的安全评估特别有用。

  

  上面说的是在没有互联网接入的情况下特别有用,其实更多的是刷了半天刷不出验证码的时候,于是就转向SearchSploit。

  SearchSploit简单来说就是Exploit Database的离线版本,我们可以在本机保存这样一份漏洞数据库,可以通过SearchSploit进行检索,就不用刷验证码了。

  本文就简单介绍一下SearchSploit的一些常用使用示例,可以在官方文档看到。

  可以在kali的命令行下直接输入:searchsploit -h ,查看帮助文档:

root@kali:~# searchsploit -h
Usage: searchsploit [options] term1 [term2] ... [termN] ==========
Examples
==========
searchsploit afd windows local
searchsploit -t oracle windows
searchsploit -p
searchsploit linux kernel 3.2 --exclude="(PoC)|/dos/" For more examples, see the manual: https://www.exploit-db.com/searchsploit/ =========
Options
=========
-c, --case [Term] Perform a case-sensitive search (Default is inSEnsITiVe).
-e, --exact [Term] Perform an EXACT match on exploit title (Default is AND) [Implies "-t"].
-h, --help Show this help screen.
-j, --json [Term] Show result in JSON format.
-m, --mirror [EDB-ID] Mirror (aka copies) an exploit to the current working directory.
-o, --overflow [Term] Exploit titles are allowed to overflow their columns.
-p, --path [EDB-ID] Show the full path to an exploit (and also copies the path to the clipboard if possible).
-t, --title [Term] Search JUST the exploit title (Default is title AND the file's path).
-u, --update Check for and install any exploitdb package updates (deb or git).
-w, --www [Term] Show URLs to Exploit-DB.com rather than the local path.
-x, --examine [EDB-ID] Examine (aka opens) the exploit using $PAGER.
--colour Disable colour highlighting in search results.
--id Display the EDB-ID value rather than local path.
--nmap [file.xml] Checks all results in Nmap's XML output with service version (e.g.: nmap -sV -oX file.xml).
Use "-v" (verbose) to try even more combinations
--exclude="term" Remove values from results. By using "|" to separated you can chain multiple values.
e.g. --exclude="term1|term2|term3". =======
Notes
=======
* You can use any number of search terms.
* Search terms are not case-sensitive (by default), and ordering is irrelevant.
* Use '-c' if you wish to reduce results by case-sensitive searching.
* And/Or '-e' if you wish to filter results by using an exact match.
* Use '-t' to exclude the file's path to filter the search results.
* Remove false positives (especially when searching using numbers - i.e. versions).
* When updating or displaying help, search terms will be ignored.

更新

  使用"-u"选项,将exploit-db更新到最新状态:

root@kali:~# searchsploit -u

基本搜索

  比如,要搜索squirrelmail历史上出现过的漏洞:

root@kali:~# searchsploit squirrelmail
---------------------------------------------------------------------- ----------------------------------
Exploit Title | Path
| (/usr/share/exploitdb/platforms/)
---------------------------------------------------------------------- ----------------------------------
SquirrelMail - 'chpasswd' Buffer Overflow | linux/local/.c
SquirrelMail - 'chpasswd' Local Privilege Escalation (Brute Force) | linux/local/.c
SquirrelMail 1.2. - 'move_messages.php' Arbitrary File Moving | php/webapps/.txt
SquirrelMail 1.2. - Exploit | php/webapps/.txt
SquirrelMail 1.2. Administrator Plugin - 'options.php' Arbitrary Ad | php/webapps/.txt
SquirrelMail 1.2./1.2. - Cross-Site Scripting Multiple Vulnerabilit | php/webapps/.txt
SquirrelMail 1.2.x - From Email Header HTML Injection | php/webapps/.txt
SquirrelMail 1.2.x - Theme Remote Command Execution | php/webapps/.sh
SquirrelMail 1.4. Address Add Plugin - 'add.php' Cross-Site Scriptin | php/webapps/.txt
SquirrelMail 1.4.x - Folder Name Cross-Site Scripting | php/webapps/.txt
SquirrelMail .x - Email Header HTML Injection | linux/remote/.txt
SquirrelMail 3.1 - Change Passwd Plugin Local Buffer Overflow | linux/local/.c
SquirrelMail < 1.4. - Remote Code Execution | linux/remote/.sh
SquirrelMail G/PGP Encryption Plugin - 'deletekey()' Command Injectio | php/webapps/.rb
SquirrelMail G/PGP Encryption Plugin 2.0 - Command Execution | php/webapps/.txt
SquirrelMail G/PGP Encryption Plugin 2.0/2.1 - Access Validation / In | php/webapps/.txt
SquirrelMail G/PGP Encryption Plugin 2.0/2.1 - Multiple Unspecified R | php/webapps/.txt
SquirrelMail PGP Plugin - Command Execution (SMTP) (Metasploit) | linux/remote/.rb
SquirrelMail Virtual Keyboard Plugin - 'vkeyboard.php' Cross-Site Scr | php/webapps/.txt
Squirrelmail 1.4.x - 'Redirect.php' Local File Inclusion | php/webapps/.txt
---------------------------------------------------------------------- ----------------------------------

  searchsploit的搜索语句是 and 的关系,条件越多,得到的搜索结果也就越少,有时要注意放宽搜索条件。

  比如要搜索squirrelmail 爆出的远程代码执行漏洞:'squirrelmail remote code execution'

root@kali:~# searchsploit squirrelmail remote code execution
---------------------------------------------------------------------- ----------------------------------
Exploit Title | Path
| (/usr/share/exploitdb/platforms/)
---------------------------------------------------------------------- ----------------------------------
SquirrelMail < 1.4. - Remote Code Execution | linux/remote/.sh
---------------------------------------------------------------------- ----------------------------------
root@kali:~#

按标题搜索

  默认情况下,searchsploit将检查漏洞的标题以及路径。根据搜索条件,这可能会有误报(尤其是在搜索与平台和版本号匹配时)。可以使用"-t"选项将搜索限制在标题中:

root@kali:~# searchsploit -t oracle windows
---------------------------------------------------------------------- ----------------------------------
Exploit Title | Path
| (/usr/share/exploitdb/platforms/)
---------------------------------------------------------------------- ----------------------------------
Oracle 10g (Windows x86) - 'PROCESS_DUP_HANDLE' Local Privilege Escal | win_x86/local/.c
Oracle 9i XDB (Windows x86) - FTP PASS Overflow (Metasploit) | win_x86/remote/.rb
Oracle 9i XDB (Windows x86) - FTP UNLOCK Overflow (Metasploit) | win_x86/remote/.rb
Oracle 9i XDB (Windows x86) - HTTP PASS Overflow (Metasploit) | win_x86/remote/.rb
Oracle MySQL (Windows) - FILE Privilege Abuse (Metasploit) | windows/remote/.rb
Oracle MySQL (Windows) - MOF Execution (Metasploit) | windows/remote/.rb
Oracle MySQL for Microsoft Windows - Payload Execution (Metasploit) | windows/remote/.rb
Oracle VM VirtualBox 5.0. r112930 (x64) - Windows Process COM Injec | win_x86-/local/.txt
Oracle VirtualBox Guest Additions 5.1. - Unprivileged Windows User- | multiple/dos/.cpp
---------------------------------------------------------------------- ----------------------------------

复制到剪贴板

  现在我们已经找到了我们正在寻找的漏洞,有很多方法可以快速访问它。通过使用"-p",我们可以获得更多关于漏洞利用的信息,以及将利用漏洞的完整路径复制到剪贴板上,以上面的squirrelmail RCE为例,其编号是41910:

root@kali:~# searchsploit 
---------------------------------------------------------------------- ----------------------------------
Exploit Title | Path
| (/usr/share/exploitdb/platforms/)
---------------------------------------------------------------------- ----------------------------------
SquirrelMail < 1.4. - Remote Code Execution | linux/remote/.sh
---------------------------------------------------------------------- ----------------------------------
root@kali:~# searchsploit -p .sh
Exploit: SquirrelMail < 1.4. - Remote Code Execution
URL: https://www.exploit-db.com/exploits/41910/
Path: /usr/share/exploitdb/platforms/linux/remote/.sh Copied EDB-ID #'s path to the clipboard.

显示网址

  我们用searchsploit进行搜索的时候,显示的有两列:标题和路径,我们可以使用"-w" 选项,让路径那一列显示为URL地址,这样就能通过浏览器打开:

root@kali:~# searchsploit -w phpmailer
------------------------------------------------------------ --------------------------------------------
Exploit Title | URL
------------------------------------------------------------ --------------------------------------------
PHPMailer 1.7 - 'Data()' Remote Denial of Service | https://www.exploit-db.com/exploits/25752/
PHPMailer < 5.2. - Remote Code Execution (Bash) | https://www.exploit-db.com/exploits/40968/
PHPMailer < 5.2. - Remote Code Execution (PHP) | https://www.exploit-db.com/exploits/40970/
PHPMailer < 5.2. - Remote Code Execution (Python) | https://www.exploit-db.com/exploits/40974/
PHPMailer < 5.2. - Sendmail Argument Injection (Metasploi | https://www.exploit-db.com/exploits/41688/
PHPMailer < 5.2. - Remote Code Execution | https://www.exploit-db.com/exploits/40969/
PHPMailer < 5.2. / SwiftMailer < 5.4.-DEV / Zend Framewo | https://www.exploit-db.com/exploits/40986/
PHPMailer < 5.2. with Exim MTA - Remote Code Execution | https://www.exploit-db.com/exploits/42221/
PHPMailer < 5.2. - Local File Disclosure | https://www.exploit-db.com/exploits/43056/
WordPress PHPMailer 4.6 - Host Header Command Injection (Me | https://www.exploit-db.com/exploits/42024/
------------------------------------------------------------ --------------------------------------------

  简要介绍如上。

SearchSploit的更多相关文章

  1. 如何使用kali的Searchsploit查找软件漏洞

    Searchsploit Searchsploit会通过本地的exploit-db, 查找软件漏洞信息 打开kali的命令行, 输入: searchsploit 查看系统帮助 查找mssql的漏洞 如 ...

  2. linux提权 searchsploit 使用规范

    使用 searchsploit 时,要把整个控制台最大化,这样才能显示完整的漏洞信息. 查看漏洞帮助文件:

  3. 小白日记24:kali渗透测试之提权(四)--利用漏洞提权

    利用漏洞提权实例 前提:已渗透进一个XP或2003系统 一.实验目标漏洞:Ms11-080 补丁:Kb2592799 漏洞信息:https://technet.microsoft.com/librar ...

  4. 小白日记19:kali渗透测试之选择和修改EXP

    EXP 目的:学会选择和修改网上公开的漏洞利用代码[EXP(python\perl\ruby\c\c++....)] 方法: 1.Exploit-db[kali官方维护的漏洞利用代码库] 2.Secu ...

  5. 小白日记15:kali渗透测试之弱点扫描-漏扫三招、漏洞管理、CVE、CVSS、NVD

    发现漏洞 弱点发现方法: 1.基于端口服务扫描结果版本信息,比对其是否为最新版本,若不是则去其 官网查看其补丁列表,然后去逐个尝试,但是此法弊端很大,因为各种端口应用比较多,造成耗时大. 2.搜索已公 ...

  6. sqlmap命令

    -u #注入点 -f #指纹判别数据库类型 -b #获取数据库版本信息 -p #指定可测试的参数(?page=1&id=2 -p "page,id") -D "& ...

  7. Basic Linux Privilege Escalation

    (Linux) privilege escalation is all about: Collect - Enumeration, more enumeration and some more enu ...

  8. 无需sendmail:巧用LD_PRELOAD突破disable_functions

    *本文原创作者:yangyangwithgnu,本文属FreeBuf原创奖励计划,未经许可禁止转载 摘要:千辛万苦拿到的 webshell 居然无法执行系统命令,怀疑服务端 disable_funct ...

  9. Hacking Box Droopy: v0.2

    概述: 目标:get flag 下载链接: https://www.vulnhub.com/entry/droopy-v02,143/ 工具: kail linux 开工 1)扫描开道: # netd ...

随机推荐

  1. 检测web服务器指定位置大文件是否存在

    在bugscan群里看到有人问有一个大文件,想探测其是否存在.如果使用curl的话,会将整个文件下载到节点,对于扫描没有任何用处,反而浪费了扫描时间. 于是我想到的解决办法是不使用curl,直接用底层 ...

  2. .NET Socket 简单入门

    说到Socket,想必大家都或多或少有所涉及,从最初的计算机网络课程,讲述了tcp协议,而Socket就是对协议的进一步封装,使我们开发人员能够更加容易轻松的进行软件之间的通信. 这个星期刚好接受一个 ...

  3. ZK Leader选举

    1.Zookeeper节点状态LOOKING:寻找Leader状态,处于该状态需要进入选举流程LEADING:领导者状态,处于该状态的节点说明是角色已经是LeaderFOLLOWING:跟随者状态,表 ...

  4. MT【146】一边柯西,一边舍弃

    (2018浙江省赛9题)设$x,y\in R$满足$x-6\sqrt{y}-4\sqrt{x-y}+12=0$,求$x$的范围______ 解答:$x+12=6\sqrt{y}+4\sqrt{x-y} ...

  5. MT【117】立体几何里的一道分类讨论题

    评:最后用到了中间的截面三角形两边之和大于第三边.能不能构成三棱锥时考虑压扁的"降维"打击是常见的方式.

  6. Android App Architecture使用详解

    Android应用架构简介 对于经过过构建app的Android开发人员来说, 现在是时候了解一下构建鲁棒, 质量高的应用的最佳实践和推荐架构了. 这篇文章假设读者对Android framework ...

  7. Java之File与递归

    File类的使用和递归思想 File类 概述 文件: 存储数据 文件夹: 管理文件与文件夹 构造方法 public File(String pathname) :通过将给定的路径名字符串转换为抽象路径 ...

  8. 前端学习 -- 内联框架iframe

    内联框架iframe 可以向一个页面中引入其他的外部页面 内联框架中的内容不会被搜索引擎所检索,所以开发中尽量不要使用内联框架 <iframe></iframe> 属性: sr ...

  9. git 生成公匙私匙

    直接 ssh-keygen -t rsa -C "*********@qq.com"也行 git config --global user.name “用户名” 用户名随便起!你能 ...

  10. C++ std::allocator<T> 与new对比效率使用

    基础知识通道:http://blog.csdn.net/Xiejingfa/article/details/50955295 C/C++: #include <iostream> #inc ...