WIFI无人机渗透测试框架:dronesploit 教程

Admin 2020-04-28 278人围观 ,发现0个评论 WIFI无人机渗透测试框架dronesploit

dronesploit此CLI框架基于sploitkit(https://github.com/dhondta/sploitkit),并尝试收集专门针对无人机黑客的黑客技术和漏洞。 为了易于使用,该界面的布局类似于Metasploit。  

 

注意:建议您使用python3.7运行此框架;  

 WIFI无人机渗透测试框架:dronesploit 教程

以下是我使用Kali Linux的具体步骤。  

 

首先,dronesploit下载

有很多下载方法,我将直接git clone。  

 

 root @ kali:/ usr / local#git clone https://github.com/dhondta/dronesploit.git

 

第二,安装dronesploit 

 WIFI无人机渗透测试框架:dronesploit 教程

第一步:安装python和pip 

 

首先,确保您的计算机上装有python和pip,版本必须为python3,否则您将无法运行此框架。  

 

例如:我在这里有pyhton3.7和pip。 请注意,pip必须对应于python版本。 由于Kali Linux已经存在,因此我不需要安装它,每个人都知道这一步。  

 

WIFI无人机渗透测试框架:dronesploit 教程 Web安全 第1张

 python和pip 

 

第二步:如果我们要安装相关模块tinyscript 

 

 否如果已安装,则直接运行dronesploit会报告“ ModuleNotFoundError:没有名为'tinyscript'的模块”,“ ModuleNotFoundError:没有名为“ tinyscript“的模块”错误。

WIFI无人机渗透测试框架:dronesploit 教程 Web安全 第2张

安装tinyscript模块方法也很简单,具体如下:

root@kali:/usr/local/dronesploit# pip install tinyscript

 

第三步:安装依赖模块 sploitkit

root@kali:/usr/local/dronesploit# pip install sploitkit

 

第四步:重新安装模块 prompt-toolkit

root@kali:/usr/local/dronesploit# pip install prompt-toolkit

 

先说一下为什么要重新安装吧?

如果不重新安装,直接运行dronesploit,就会报如下错误:

root@kali:/usr/local/dronesploit# python main.py
Traceback (most recent call last):  File "main.py", line 3, in <module>    from lib import DronesploitConsole  File "/usr/local/dronesploit/lib/__init__.py", line 3, in <module>    from sploitkit import FrameworkConsole  File "/usr/local/lib/python3.7/dist-packages/sploitkit/__init__.py", line 4, in <module>    from .core import *  File "/usr/local/lib/python3.7/dist-packages/sploitkit/core/__init__.py", line 1, in <module>    from .console import *  File "/usr/local/lib/python3.7/dist-packages/sploitkit/core/console.py", line 11, in <module>    from prompt_toolkit import print_formatted_text, PromptSession
ImportError: cannot import name 'print_formatted_text' from 'prompt_toolkit' (/usr/lib/python3/dist-packages/prompt_toolkit/__init__.py)

 

由于根据我这上面的报错,我必须要先删除(rm -rf) /usr/lib/python3/dist-packages/prompt_toolkit/  这个目录,才能安装。(因为我 pip uninstall 卸载还不管用)

cd  /usr/lib/python3/dist-packages
rm -rf prompt_toolkit 
rm -rf prompt-toolkit1.8.1.egg-info

 

由于我的Kali Linux有一个问题,我的pip命令安装路径在“/usr/lib/python3/dist-packages/pip”。

但是,pip默认安装模块位置又在“/usr/local/lib/python3.7/dist-packages”。

因此,我估计好多模块都得先删除,再重新安装。

一般来说,python默认情况下,pip命令的位置和安装模块默认位置都是在同一个路径下的。

 

第五步:重新安装模块 pygments

root@kali:/usr/local/dronesploit# pip install Pygments

 

如果不重新安装,直接运行会报错如下:

root@kali:/usr/local/dronesploit# python main.py
Traceback (most recent call last):  File "main.py", line 3, in <module>    from lib import DronesploitConsole  File "/usr/local/dronesploit/lib/__init__.py", line 3, in <module>    from sploitkit import FrameworkConsole  File "/usr/local/lib/python3.7/dist-packages/sploitkit/__init__.py", line 4, in <module>    from .core import *  File "/usr/local/lib/python3.7/dist-packages/sploitkit/core/__init__.py", line 1, in <module>    from .console import *  File "/usr/local/lib/python3.7/dist-packages/sploitkit/core/console.py", line 17, in <module>    from .command import *  File "/usr/local/lib/python3.7/dist-packages/sploitkit/core/command.py", line 6, in <module>    from .components.config import Config  File "/usr/local/lib/python3.7/dist-packages/sploitkit/core/components/__init__.py", line 2, in <module>    from .config import *  File "/usr/local/lib/python3.7/dist-packages/sploitkit/core/components/config.py", line 5, in <module>    from ...utils.objects import BorderlessTable  File "/usr/local/lib/python3.7/dist-packages/sploitkit/utils/__init__.py", line 5, in <module>    from .path import Path
  File "/usr/local/lib/python3.7/dist-packages/sploitkit/utils/path.py", line 8, in <module>    from pygments.lexers import Python2Lexer
ImportError: cannot import name 'Python2Lexer' from 'pygments.lexers' (/usr/lib/python3/dist-packages/pygments/lexers/__init__.py)

解决这个报错也很简单,如下:其实,这里跟上面的原理是相同的。

cd  /usr/lib/python3/dist-packages
rm -rf pygments 
rm -rf Pygments2.0.1.egg-info

 

第六步:运行无人机框架:dronesploit 

python main.py

所有的都搞好了,我运行报了一个错误:IndexError:list index out of range

WIFI无人机渗透测试框架:dronesploit 教程 Web安全 第3张

这个错误可以接受! 毕竟,这意味着运行没有问题,但是py报告错误。 我检查了这些文件的源代码并进行了查看。 这就是我的台式计算机的原因。 我的台式计算机上没有网卡。 到接口接口,i.split()[0]为空,因此报告了此错误。  

 

如果您的计算机上插入了网卡接口,除了eth0和lo之外,还有一个类似于wlan0mon的效果如下:

WIFI无人机渗透测试框架:dronesploit 教程 Web安全 第4张

注意:还有一种“快速安装”的方法,我没有亲测试过,大家可以试一个,具体如下:

 

1、 克隆仓库

$ git clone https://github.com/dhondta/dronesploit.git

 

2、安装依赖模块

$ cd dronesploit

$ pip install -r requirements.txt

 

3、启动

$ python3 main.py

三、dronesploit  使用

只要你能成功启动dronesploit,它的用法就更加简单了,类似于Metasploit。下面就简单给大家说一下:

 

第一步:启动 dronesploit 框架

$ python main.py   #这里要用python3版本

 

我们可以获取帮助:

dronesploit > help

 

第二步:设置

 

1、将iface设置为监视模式

dronesploit > toggle wlp4s0

WIFI无人机渗透测试框架:dronesploit 教程 Web安全 第5张

2、在监视器模式下,在iface上扫描

dronesploit > scan wlp4s0

WIFI无人机渗透测试框架:dronesploit 教程 Web安全 第6张

3、获得目标

dronesploit > targets

WIFI无人机渗透测试框架:dronesploit 教程 Web安全 第7张

第三步:使用模块

 

1、选择相应的破解模块

dronesploit > use auxiliary/wifi/wpa2psk_crack

 

2、发起攻击

Dronesploit auxiliary(…) > run

WIFI无人机渗透测试框架:dronesploit 教程 Web安全 第8张

第四步:连接破解后的目标

 

1、连接一个目标

dronesploit > connect [target]

 

2、选择一个模块

dronesploit > use …

 

3、显示模板选项

dronesploit exploit(…) > show options

 

4、开始运行

dronesploit exploit(…) > run

WIFI无人机渗透测试框架:dronesploit 教程 Web安全 第9张

WIFI无人机渗透测试框架:dronesploit 教程 Web安全 第10张

到这里为止,dronesploit如何使用就算讲完了,下面再给大家简单展示一下其它相关的,大家有兴趣的话,可以简单了解一下。

1、接口

WIFI无人机渗透测试框架:dronesploit 教程 Web安全 第11张

 

WIFI无人机渗透测试框架:dronesploit 教程 Web安全 第12张

 

2、模块

此示例显示了DroneSploit的模块示例,该模块旨在更改特定型号的无人机的密码或SSID。

WIFI无人机渗透测试框架:dronesploit 教程 Web安全 第13张

 

总结:

此工具一定、一定、一定不要在Windows上安装、使用,我亲自测试过,没有成功,报错很多,虽然大部份都解决了。但是,其中会报两个很重要错误:

 

1、错误:需要Microsoft Visual C++ 14.0

WIFI无人机渗透测试框架:dronesploit 教程 Web安全 第14张

具体错误如下:

Installing collected packages: peewee, wcwidth, prompt-toolkit, pyminizip, requests, sploitkit
    Running setup.py install for peewee ... done
    Running setup.py install for pyminizip ... error
    ERROR: Command errored out with exit status 1:
     command: 'f:\python3.7.0\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\fujie\\
AppData\\Local\\Temp\\pip-install-banau2ha\\pyminizip\\setup.py'"'"'; __file__='"'"'C:\\Users\\fujie\\AppData\\Local\\Te
mp\\pip-install-banau2ha\\pyminizip\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().rep
lace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record 'C:\Users\fujie\AppData\Local\Temp\pip-record-64o08zgv\install-record.txt' --single-version-externally-managed --compile
         cwd: C:\Users\fujie\AppData\Local\Temp\pip-install-banau2ha\pyminizip\
    Complete output (5 lines):
    running install
    running build
    running build_ext
    building 'pyminizip' extension    error: Microsoft Visual C++ 14.0 is required. Get it with "Build Tools for Visual Studio": https://visualstudio.micr
osoft.com/downloads/
    ----------------------------------------
ERROR: Command errored out with exit status 1: 'f:\python3.7.0\python.exe' -u -c 'import sys, setuptools, tokenize; sys.
argv[0] = '"'"'C:\\Users\\fujie\\AppData\\Local\\Temp\\pip-install-banau2ha\\pyminizip\\setup.py'"'"'; __file__='"'"'C:\
\Users\\fujie\\AppData\\Local\\Temp\\pip-install-banau2ha\\pyminizip\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"',
open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"
'))' install --record 'C:\Users\fujie\AppData\Local\Temp\pip-record-64o08zgv\install-record.txt' --single-version-extern
ally-managed --compile Check the logs for full command output.

 

2、AttributeError:模块“ os”没有属性“ geteuid”。

WIFI无人机渗透测试框架:dronesploit 教程 Web安全 第15张

具体错误如下:

Traceback (most recent call last):  File "main.py", line 13, in <module>
    initialize(exit_at_interrupt=False, sudo=True)  File "E:\python3.7.5\lib\site-packages\tinyscript\parser.py", line 290, in initialize    if os.geteuid() != 0:AttributeError: module 'os' has no attribute 'geteuid'

 

这个错误解决不了,因为python模块 os.geteuid() 只能用于uninx。下面是官方文档的说明:

os.geteuid()

返回当前进程的有效用户ID。

 

可用性:Unix。


请发表您的评论
请关注微信公众号
微信二维码
不容错过
Powered By 蚁人博客