iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >< 渗透测试学习指南 > python编写目录遍历工具
  • 364
分享到

< 渗透测试学习指南 > python编写目录遍历工具

web安全pythonphp系统安全网络 2023-09-03 11:09:11 364人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

转载请注明作者及出处:         在编写目录遍历工具之前,我们首先要搭建一个WordPress框架环境,用以实践我们稍后编写出的工具。这里推荐大家通过在kali linux安装小皮面板搭建环境,毕竟用小皮搭环境是真方便(真香!)

转载请注明作者及出处:

        在编写目录遍历工具之前,我们首先要搭建一个WordPress框架环境,用以实践我们稍后编写出的工具。这里推荐大家通过在kali linux安装小皮面板搭建环境,毕竟用小皮搭环境是真方便(真香!)

一、环境搭建

打开终端,输入以下命令安装小皮面板

wget -O install.sh https://notDocker.xp.cn/install.sh && sudo bash install.sh

       在小皮面板安装完成后,会在最后的部分提示登录管理界面的URL,以及初始用户名和密码,大家记得保存

 

       如果重启设备之后发现小皮没有开机自启,可以在终端输入xp,打开小皮命令行管理界面进行开启,具体详情如下图

       然后浏览器登录小皮管理界面,开启Mysql和Apache,由于一会用来测试的WordPress5.4版本对PHP有依赖关系(php5.6以上),所以我们需要下载安装php5.6.40版本,并如图所示将网站php版本更换为5.6.40版本

注:如小皮面板未自动创建数据库,请手动创建数据库

 

 

       接下来我们前往WordPress官网,下载WordPress5.4版本并在小皮网站根目录解压,我的根目录是/www/admin/localhost_80/wwwroot

 

        然后进入WordPress解压目录修改如图所示配置文件,将数据库名、用户名、密码做相应配置(配置思路类似DVWA靶场搭建配置),修改完后将文件名修改为wp-config.php

 

 浏览器访问我们刚才搭建的WordPress,搭建成功

 

二、目录遍历工具编写

话不多说,上代码

import contextlibimport osimport queueimport requestsimport sysimport threadingimport timeFILTERED = [".jpg", ".gif", ".png", ".CSS"]TARGET = "Http://localhost/wordpress/"THREADS = 10answers = queue.Queue()WEB_paths = queue.Queue()def gather_paths():    for root, _, files in os.walk('.'):        for fname in files:            if os.path.splitext(fname)[1] in FILTERED:                continue            path = os.path.join(root, fname)            if path.startswith('.'):                path = path[1:]            print(path)            web_paths.put(path)@contextlib.contextmanagerdef chdir(path):    """    在进入时将目录更改为指定路径.    在退出时,回到原始目录.    """    this_dir = os.getcwd()    os.chdir(path)    try:        yield    finally:        os.chdir(this_dir)if __name__ == '__main__':    with chdir("/www/admin/localhost_80/wwwroot/wordpress"):        gather_paths()    input('按下Enter键继续')

       首先,我们设置了目录遍历的URL(http://localhost/wordpress/),并且我们创建了一个列表,这个列表包含了我们想要在扫描时跳过的文件类型,因为这些类型的文件通常对我们的价值并不大。

      然后,我们使用os.walk函数遍历web应用安装目录中的所有文件和目录,在遍历过程中,我们会构建目标文件的完整路径,并且会通过FILTERED列表跳过我们不想要的文件类型。

       大家可能注意到,我们用作异常处理的代码块并没有使用try/except,而是使用了try/finally,它与前者的区别在于,不管try代码块出现什么问题,finally代码块都一定会被执行。

       在main代码块中,我们给定了WordPress的解压目录,也就是我们通过浏览器访问WordPress时访问的WordPress具体路径

让我们运行一下这个工具,看看它发挥的力量!

 

 

 

来源地址:https://blog.csdn.net/m0_68080066/article/details/128060563

--结束END--

本文标题: < 渗透测试学习指南 > python编写目录遍历工具

本文链接: https://www.lsjlt.com/news/392068.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作