Just like what we promised before, this time we want to release grid toolkit which usable to perform pentest against grid computing infrastructure. It’s almost two years after we release paper related to grid computing [in]security at 2008. The paper contains of:
- Introduction to grid computing
- Grid computing scanning and enumeration
- Exploiting network and transport layer related to grid security
- Exploiting DNS to stop grid infrastructure trusteeship
- Exploiting web based – grid computing portal
- Cracking certificate authority pass phrase
- Exploiting headnode trusteeship using XML file
Some points mentioned can be exploited using existing network security tool while others are already supported by Grid Toolkit. Grid Toolkit uses python with some additional module which must be installed. The additional python module are:
- Module goto to support grid toolkit core program
- Module ClientForm to support grid portal guessing
- Module Paramiko to support certificate authority cracking
Grid toolkit supports to:
- Scanning and enumeration grid infrastructure
- Guessing login gridsphere – web based grid portal
- Cracking pass phrase of certificate authority private key file
- Exploiting headnode trusteeship using XML file
More reference about how to install and use this tool will be available soon, so just keep in touch with IPSECS. Finally you can download grid toolkit on gridtoolkit.sourceforge.net or reading python source code on core.ipsecs.com!
GridSphere is web based portal framework to access grid computing resources. The GridSphere provides an open-source portlet based Web portal. GridSphere enables developers to quickly develop and package third-party portlet web applications that can be run and administered within the GridSphere portlet container.
GridSphere which is critically uses to access grid resource is found to be vulnerable that can be exploited to enumerate a user is valid or not in grid. This vulnerability exist due to the response of gridsphere in handling in-exist user with “User does not exist“. To exploit this issue, you can use this python script.
python gridsphere-brute.py https://example.com/acgt/portal?cid=login users.txt
[INVALID] anto
[INVALID] abc
[INVALID] betha
[INVALID] een
[INVALID] nita
[INVALID] aris
[INVALID] atik
[INVALID] babas
[INVALID] alex
[OK] admin
[INVALID] fuck
[INVALID] lisa
[INVALID] ifa
[INVALID] hana
[INVALID] bram
IPSECS has developed some tools to assess grid computing security years ago which can be download here. The tools is encoded in ASCII and bundled with article which explains grid computing [in]security written in indonesian. The tools provided can be used to:
- Enumerate headnode by identifying GridFTP Service and Web Service Container
- Crack private key in Certificate Authority
- Exploit others headnode in grid when a headnode and its certificate compromised.
For your information, currently IPSECS is developing grid-toolkit to make grid computing penetration much more easier.
Introduction
Grid computing is kind of new technology which has been known since 1990s. It idea was brought together by Ian Foster, Carl Kesselman, and Steve Tuecke, widely regardes as “Father of Grid”. Grid computing is defined as group of node computation which works together in distributed computing. You can find some grid project in wikipedia article here.
Each node in grid has computer cluster to perform high performance computing through parallel computation. A computer cluster consists of a headnode (master) and some computational nodes (slaves). Headnode is responsible in communicating with the other headnode in grid, managing computation resource, and scheduling computation jobs to slave. We don’t want to explain detail how computer cluster works. In this article, our interest is in grid computing and why it’s vulnerable to some hacking exploitation.
How Grid Works
Grid computing is really complex inside its technology, so the chance of being exploited is really big. Grid computing needs a good network connectivity, many TCP/IP services, encryption, parallel programming, and web service. A headnode of cluster trusts the other because valid Certificate Authority (CA) is installed on both of headnode. CA which installed on headnode is called as Host CA. TCP/IP services is needed in headnode to send or receive data or execute jobs between two or more headnodes. There is two services in headnode which need to communicate a headnode to other, 1st is GridFTP service which is responsible in data transfer between two or more headnodes and 2nd is Web Service Container which is responsible in receiving jobs from user. Both services can be activated by installing Globus Toolkit which is de facto standard open source software for grid.
Read more »