Vault7: CIA Hacking Tools Revealed
Navigation: » Latest version
Owner: User #71491
Quark Matter
('toc' missing)
THIS PAGE IS NOT YET COMPLETE.
Setting Up Development Environment
Specific Ubuntu Configuration Details
The first step in setting up the development environment is making sure that you have a working Ubuntu machine. You can use an actual Ubuntu DEVLAN machine or an Ubuntu VMVirtual Machine on your DEVLAN machine.
This page will not go into detail about how to install Ubuntu or create an Ubuntu VM, but will focus on the few ways you'll configure the Ubuntu machine before you can install and set up the UDK.
First, you need to modify your sources.list file so apt-get can use the DEVLAN repos, located at repo.devlan.net. Linux Package Repository Mirrors setup discusses a few ways to do that.
Once you have set up Ubuntu to run properly, run the following commands to update and upgrade your packages and download the ones needed for the UDK.
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install build-essential uuid-dev iasl
At this point, you should have all of the dependencies for the UDK that are not included in the UDK package itself, and you are ready to install the UDK.
Installing the UDK
The first step in setting up your development environment is to install the UDK, in this case, the TianoCore EDKEmbedded Development Kit II (http://www.tianocore.org/edk2). This is the open source environment for UEFIUniversal Extendible Firmware Interface and PI development.
The next step is to download the UDK2014 release. The download page for this release is http://tianocore.org/udk2014. Download the ZIP file and move it to your Ubuntu Machine.
From the Ubuntu machine, navigate in your terminal to the location of the ZIP file. Then, run the following commands to set up your workspace. If you change any of the file paths, it will change future commands, so pay attention to any changes you may make.
mkdir ~/src
mkdir ~/src/edk2
mv UDK2014.SP1.P1.Complete.MyWorkSpace.zip ~/src/edk2
cd ~/src/edk2
unzip UDK2014.SP1.P1.Complete.MyWorkSpace.zip
tar -xvf "BaseTools(Unix).tar"
make Basetools/
export EDK_TOOLS_PATH=$HOME/src/edk2/BaseTools
./edksetup.sh BaseTools
At this point, you have built the BaseTools components and set up the build shell environment. The next step is to configure your installation to use the correct GCCGNU Compiler Collection compiler. First, determine your GCCGNU Compiler Collection version by using the command below.
bash$ gcc --version
gcc (Ubuntu4.9.2-10ubuntu13) 4.9.2
Copyright (C) 2014 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE
According to the above output, the machine is using GCCGNU Compiler Collection version 4.9.2. For the purposes of configuration, this will be referred to as "GCC49".
Next, open up the Conf/target.txt file and find the two following lines:
ACTIVE_PLATFORM =Nt32Pkg/Nt32Pkg.dsc
TOOL_CHAIN_TAG =MYTOOLS
TARGET_ARCH =IA32
and change them to the following:
ACTIVE_PLATFORM =MdeModulePkg/MdeModulePkg.dsc
TOOL_CHAIN_TAG =GCC49
TARGET_ARCH =IA32 X64
Note: if your Ubuntu machine has a different version of GCC, use that number above instead of GCC49.
Now, you will need to re-run the edksetup.sh script and build the project. The commands (and their output if used correctly) are below:
ACTIVE_PLATFORM =MdeModulePkg/MdeModulePkg.dsc
TOOL_CHAIN_TAG =GCC49
TARGET_ARCH =IA32 X64