osql&Intranet!
osql
零过滤sql注入,也没有套娃 只不过数据库是oracl 其中简介是不要作弊意思 就是不要使用sqlmap去跑 这里就算你跑出来也是没有flag的 首先想教的就是拿到sql注入首先需要看看数据库类型 接着要去查看数据库版本 其次在id里有提示flag表里的内容是提示 所以不要说误导你 最后给的提示里面已经有答案了
从题目可以看到有sql注入 并且题目名字是osql 所以 数据库可以猜测是oracle
这里进行尝试发现确实是oracle数据库
看字段数 这里通过order by 可以发现 是3个字段
这里从username 的名字也可以发现这里表的结构是 sqllibs的数据库表
其实这里就是一个提示信息
这里尝试查看回显位 发现报错信息from关键字没有发现
直接查看sql官方语法
这里可以发现存在一个dual表, 当然这里如果你熟悉 sqllibs 的话会发现有一张users 的表 还有这里也可以知道有一张flag表,三个都可以去使用
尝试第一个dual 的时候发现存在数据类型不相同的问题
尝试flag发现表不存在
这里直接拿过来尝试 发现回显位 但是使用flag表为啥不存在呢 原因就是这里的数据类型不同
当flag表名被”” 包裹之后便正常访问
这里当去直接查字段的时候 发现参数未定义 这里还是说明字段类型没有正确匹配上
这里就发现了需要去查询 数据库的版本信息,这里的主要目的就是想 拿到sql注入首先需要查询的是数据库的类型 接着就是去查询数据库的版本 如果你从第一步就先去查数据库版本这里的flag表中的值其实无所谓
版本就很简单了 只要你查到了版本就返回flag
题目描述说了不许作弊的意思就是不许使用sqlmap 的这里如果使用sqlmap注入出来的数据也是没有用的 不会返回flag
数据库结构
主要代码
import os |
Intranet!
这是一道内网的题目 主要是想介绍以下内网渗透的流程
网络环境如下
首先web服务器对外提供了一个web服务 在内网中还有一台 pc主机 这里的192.168 是内网网段 不知道的可以去学习下网络基础. 在本题目中web服务器 已经被你拿下了 有一个shell.php 的shell是可以执行网站命令的. 接着在 网站的根目录下找到了一个密码本.这个密码本存放着该站点的测试用户信息.其中ip port username password 是ssh连接信息 这里可能会卡住 .接下来需要去使用ssh连接上主机获得用户权限进入内网.到达内网之后需要去对内网的服务进行探测 也就是扫描内网ip与端口信息,其中选择了445端口作为第二台主机的ssh端口去连接(原因后面会写).接着在pc的home目录下就可看到flag.接下来按照内网渗透流程就应该是提权与持久化了.这里的彩蛋就是root用户提权.这里的提权方法就是简单的 su root 密码是root 也就是弱口令.
页面什么都没有,直接扫目录
连接
找到password.txt
发现是密码本 这里可以发现是ssh的ip 端口密码信息
使用cmd的ssh工具进行连接 使用kali也是可以的 使用ssh工具也是可以的
ifconfig |
这里还有一个 ip可以连接 但是需要端口信息
这里搜索内网常见端口信息 第一个445
这里为什么是445端口呢 原因 这是进入内网必须要扫的一个漏洞就是永恒之蓝 因此这里选择了445 端口
直接尝试 连接 成功
使用 fscan 去扫描内网端口
上传到服务器上去
启动一个http服务
wget 下载文件
扫描端口信息 发现445 open
或者一个一个常见端口尝试 445就可以连接成功
这里还有一个彩蛋 就是提权操作 这里的root用户是一个弱口令 root 直接提权之后就可以查看到 /root目录下的彩蛋
kali
ssh 连接工具 windterm