The Penetration Testing Toolkit (The PT2) is a software tool to aid end users in the security assessment of power systems sector specific embedded devices. The PT2 provides the end user with a centralized interface for managing and executing penetration test activities. The PT2 gives the end user the ability to execute the full range of penetration test activities such as: script execution, data collection, data analysis, traffic injection, and fuzzing. Additionally, the PT2 provides access to a variety freely available open source security penetration testing tools in an easy to use interface. The benefit of this approach is that it minimizes the amount of setup required in order to execute a penetration test. In this initial release of the software, support for the OpenADR 2.0a protocol has been provided. The OpenADR 2.0a protocol is an XML based HTTP protocol, therefore, the toolkit may also be utilized to test protocols which are similar in structure to the OpenADR protocol.
Values and benefits provided by the PT2 are that it provides:
• A power systems sector specific tool for performing penetration testing.
• A tool targeting power systems specific protocols.
• A unified interface for performing multiple penetration testing activities
Operating System Prerequisites:
• Ubuntu Linux 14.04
• Kali Linux
• Windows Vista/7/8
• Java SE JRE 6u45
• Apache Maven 2.2.1 build system
• Apache Ant 1.9 build system
• Winpcap (for Windows)
• Libpcap (for Linux)
• Redsocks (for Linux)
1. Install the development kit of Java SE 6 for your platform
1.1. Windows: http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase6-419409.html
1.1.1. Download Java SE Development Kit 6u45 from above link
1.1.2. Modify System Environment Variable Path to include path to Java SE Development Kit 6u45 binary (e.g. C:\Program Files\Java\jdk1.6.0_45\bin)
1.1.3. Verify install by issuing the following command and observing reported version
> java -version
1.1.4. Create another System Environment Variable named JAVA_HOME with the path to your Java Development Kit 6u45 (e.g. C:\Program Files\Java\jdk1.6.0_45)
1.2. Ubuntu Linux:
1.2.1. sudo apt-get install openjdk-6-jdk
> java -version
2. Install the Apache Maven 2.2.1 build system
2.1. Windows: http://archive.apache.org/dist/maven/binaries/
2.1.1. Download Apache Maven 2.2.1 zip from above link
2.1.2. Modify System Environment Variable Path to include path to Apache Maven 2.2.1 binary (e.g. C:\Program Files\apache-maven-2.2.1\bin)
2.1.3. Verify install by issuing the following command and observing reported version
> mvn -v
2.2. Ubuntu Linux:
2.2.1. sudo apt-get install maven2
2.2.2. Verfiy install by issuing the following command and observing reported version
> mvn -v
3. Install the Apache Ant 1.9 build system
3.1. Windows: http://ant.apache.org/bindownload.cgi
3.1.1. Download Apache Ant 1.9 from above link
3.1.2. Modify System Environment Variable Path to include path to Apache Ant 1.9 binary (e.g. C:\Program Files\apache-ant-1.9.4\bin)
3.1.3. Verify install by issuing the following command and observing reported version
> ant --version
3.2. Ubuntu Linux:
3.2.1. sudo apt-get install ant
> ant -version
4. Install libpcap for Winpcap for your platform:
4.1. Windows: http://www.winpcap.org/install/default.htm
4.1.1. Download Winpcap and run executable from above link
4.1.2. Follow instructions on the screen to install correct drivers
4.1.3. Verify install by navigating to Control Panel and to Add/Remove Programs and an entry with “WinPcap” should exist
4.2.1. sudo apt-get install libpcap0.8-dev
4.2.2. Verify install by issuing following command and observing the following libraries
installed: libpcap.so.0.8, libpcap.so.1.5.3, libpcap.a, and libpcap.so.
> sudo find / -name ‘‘libpcap*’’ -print
5. Install the redsocks package for Linux
5.1. sudo apt-get install redsocks
5.2. Verify install by issuing the following command and observing reported version
After installing all software prerequisites restart the operating system.
Building the Software
1. Extract the source binary package for PT2.
1.1. Please ensure you extract the correct source binary package for your operating system. Do not extract the Linux binary package on a Window’s platform or attempt to use Linux binaries compiled on a Window’s platform.
1.2. Please ensure that if you are building the software on a Window’s platform, you must ensure that the file path does not include any spaces. For example building the software in the folder “C:\Software Development\PT2” will not work. You will need to place it in a folder as such “C:\Software_Development\PT2”. This also applies to any subdirectory folder leading up to the project source code. This is a known issue that may be resolved in later software releases.
2. Navigate to the source package directory from the command line
3. Issue the following command to download all dependencies and build the packages
3.1. mvn clean package
4. If the build is successful, you should see a “BUILD SUCCESSFUL” response
5. If the build is not successful, please make sure you have an internet connection and try again.
6. The compiled binaries should now be present within the target/ directory
6.1. Please note that compiled binaries will exist for each of the following platforms:
6.2. Windows 32-bit (.zip file)
6.3. Windows 64-bit (.zip file)
6.4. Linux 32-bit (.tar.gz file)
6.5. Linux 64-bit (.tar.gz file)
Download and Build itself from Source : PT2v2.0.zip (3.5 MB)