WebGoat 5.4 no Ubuntu Server 13.04 – Daily 18-12-2012 – Quick and Dirty

Quick and Dirty

Neste post, vou falar sobre como fazer a instalação do WebGoat 5.4 no Ubuntu Server 13.04 – Daily 18-12-2012. Para isso é necessário fazer download do snapshot night do Ubuntu, no caso do dia deste post é Ubuntu Server 13.04 – Daily 18-12-2012:

1. Fazer download a ISO:

Screenshot from 2012-12-18 15:48:59

Screenshot from 2012-12-18 15:49:20

2. Criar VM:

Feito o download, crie uma VM no VirtualBox, com as seguintes configurações:

  • UD1304_WebGoat (nome da VM)
  • 512Mb RAM
  • HD 10Gb

3. Atualizar pacotes na VM:
apt-get update -y
apt-get upgrade -y

Screenshot from 2012-12-18 16:22:35

OBS: Não instalar tomcat do Ubuntu 13.04. Será usado do próprio WebGoat
4.Instalar X-windows e interface gráfica:
apt-get install openbox xorg firefox -y

5.Iniciar interface gráfica:
startx

6. Habilitar recursos Guest na VM via Virtualbox:

No VirtualBox habilitar:

Devices->Install Guest Additions

7. Instalar/Habilitar recursos Guest na VM via Virtualbox no ubuntu 13.04:

sudo mount /dev/dvd /mnt
sh /mnt/VBoxLinuxAdditions.sun
init 6

8. Esses pacotes devem estar instalados na VM para usar o WebGoat com X-Windows corretamente:

accountsservice
acl
acpid
adduser
apparmor
apport
apport-symptoms
apt
apt-transport-https
apt-utils
apt-xapian-index
aptdaemon
aptitude
aptitude-common
aspell
aspell-en
at
at-spi2-core
base-files
base-passwd
bash
bash-completion
bc
bind9-host
binutils
biosdevname
bsdmainutils
bsdutils
busybox-initramfs
busybox-static
byobu
bzip2
ca-certificates
colord
command-not-found
command-not-found-data
console-setup
consolekit
coreutils
cpio
cpp
cpp-4.7
crash
crda
cron
curl
dash
dbus
dbus-x11
dconf-gsettings-backend:amd64
dconf-service
debconf
debconf-i18n
debianutils
dictionaries-common
diffstat
diffutils
dmidecode
dmsetup
dnsutils
docbook-xml
dosfstools
dpkg
e2fslibs:amd64
e2fsprogs
ed
eject
enchant
ethtool
file
findutils
firefox
firefox-globalmenu
fontconfig
fontconfig-config
fonts-ubuntu-font-family-console
friendly-recovery
ftp
fuse
gcc
gcc-4.7
gcc-4.7-base:amd64
gconf-service
gconf-service-backend
gconf2
gconf2-common
gedit
gedit-common
geoip-database
gettext
gettext-base
gir1.2-atk-1.0
gir1.2-freedesktop
gir1.2-gdkpixbuf-2.0
gir1.2-glib-2.0
gir1.2-gtk-3.0
gir1.2-gtksource-3.0
gir1.2-pango-1.0
gir1.2-peas-1.0
glib-networking:amd64
glib-networking-common
glib-networking-services
gnome-user-guide
gnupg
gpgv
grep
groff-base
grub-common
grub-gfxpayload-lists
grub-pc
grub-pc-bin
grub2-common
gsettings-desktop-schemas
gsfonts
gsfonts-x11
gvfs:amd64
gvfs-common
gvfs-daemons
gvfs-libs:amd64
gzip
hardening-includes
hdparm
hicolor-icon-theme
hostname
hunspell-en-us
ifupdown
info
initramfs-tools
initramfs-tools-bin
initscripts
insserv
install-info
installation-report
intltool-debian
iproute
iptables
iputils-ping
iputils-tracepath
irqbalance
isc-dhcp-client
isc-dhcp-common
iso-codes
java-common
kbd
kexec-tools
keyboard-configuration
klibc-utils
kmod
krb5-locales
landscape-common
language-pack-en
language-pack-en-base
language-selector-common
laptop-detect
less
libaccountsservice0
libacl1:amd64
libapt-inst1.5:amd64
libapt-pkg-perl
libapt-pkg4.12:amd64
libarchive-zip-perl
libart-2.0-2:amd64
libasn1-8-heimdal:amd64
libasound2:amd64
libaspell15
libasprintf-dev:amd64
libasprintf0c2:amd64
libatasmart4:amd64
libatk-bridge2.0-0:amd64
libatk1.0-0:amd64
libatk1.0-data
libatspi2.0-0:amd64
libattr1:amd64
libavahi-client3:amd64
libavahi-common-data:amd64
libavahi-common3:amd64
libavahi-glib1:amd64
libbind9-80
libblkid1:amd64
libbonobo2-0:amd64
libbonobo2-common
libbonoboui2-0:amd64
libbonoboui2-common
libboost-iostreams1.49.0
libbsd0:amd64
libbz2-1.0:amd64
libc-bin
libc-dev-bin
libc6:amd64
libc6-dev:amd64
libcairo-gobject2:amd64
libcairo-perl
libcairo2:amd64
libcanberra-gtk3-0:amd64
libcanberra-gtk3-module:amd64
libcanberra0:amd64
libcap-ng0
libcap2:amd64
libck-connector0:amd64
libclass-accessor-perl
libclass-isa-perl
libclone-perl
libcolord1:amd64
libcomerr2:amd64
libcroco3:amd64
libcups2:amd64
libcurl3:amd64
libcurl3-gnutls:amd64
libcwidget3
libdatrie1:amd64
libdb5.1:amd64
libdbus-1-3:amd64
libdbus-glib-1-2:amd64
libdbusmenu-glib4:amd64
libdbusmenu-gtk4:amd64
libdconf1:amd64
libdee-1.0-4
libdevmapper1.02.1:amd64
libdigest-hmac-perl
libdns88
libdpkg-perl
libdrm-intel1:amd64
libdrm-nouveau2:amd64
libdrm-radeon1:amd64
libdrm2:amd64
libdw1:amd64
libedit2:amd64
libelf1:amd64
libemail-valid-perl
libenchant1c2a
libept1.4.12
libevent-2.0-5:amd64
libexif12:amd64
libexpat1:amd64
libffi6:amd64
libfile-basedir-perl
libfile-desktopentry-perl
libfile-fcntllock-perl
libfile-mimeinfo-perl
libfontconfig1:amd64
libfontenc1:amd64
libfreetype6:amd64
libfribidi0:amd64
libfs6:amd64
libfuse2:amd64
libgail-3-0:amd64
libgail18:amd64
libgc1c2
libgcc-4.7-dev:amd64
libgcc1:amd64
libgconf-2-4:amd64
libgcrypt11:amd64
libgd2-xpm:amd64
libgdbm3:amd64
libgdk-pixbuf2.0-0:amd64
libgdk-pixbuf2.0-common
libgeoclue0
libgeoip1:amd64
libgettextpo-dev:amd64
libgettextpo0:amd64
libgif4:amd64
libgirepository-1.0-1
libgl1-mesa-dri:amd64
libgl1-mesa-glx:amd64
libglade2-0:amd64
libglapi-mesa:amd64
libglib-perl
libglib2.0-0:amd64
libglu1-mesa:amd64
libgmp10:amd64
libgnome-keyring-common
libgnome-keyring0:amd64
libgnome2-0:amd64
libgnome2-bin
libgnome2-common
libgnomecanvas2-0:amd64
libgnomecanvas2-common
libgnomeui-0:amd64
libgnomeui-common
libgnomevfs2-0:amd64
libgnomevfs2-common
libgnutls26:amd64
libgomp1:amd64
libgpg-error0:amd64
libgphoto2-2:amd64
libgphoto2-l10n
libgphoto2-port0:amd64
libgpm2:amd64
libgssapi-krb5-2:amd64
libgssapi3-heimdal:amd64
libgstreamer-plugins-base1.0-0:amd64
libgstreamer1.0-0:amd64
libgtk-3-0:amd64
libgtk-3-bin
libgtk-3-common
libgtk2-perl
libgtk2.0-0:amd64
libgtk2.0-bin
libgtk2.0-common
libgtksourceview-3.0-0:amd64
libgtksourceview-3.0-common
libgudev-1.0-0:amd64
libgusb2
libhcrypto4-heimdal:amd64
libheimbase1-heimdal:amd64
libheimntlm0-heimdal:amd64
libhunspell-1.3-0:amd64
libhx509-5-heimdal:amd64
libice6:amd64
libicu48:amd64
libid3tag0
libidl-common
libidl0:amd64
libidn11:amd64
libieee1284-3:amd64
libimlib2
libio-pty-perl
libio-socket-inet6-perl
libio-string-perl
libipc-run-perl
libisc84
libisccc80
libisccfg82
libitm1:amd64
libiw30:amd64
libjasper1:amd64
libjavascriptcoregtk-3.0-0
libjbig0:amd64
libjpeg-turbo8:amd64
libjpeg8:amd64
libjson-glib-1.0-0:amd64
libjson0:amd64
libk5crypto3:amd64
libkeybinder0
libkeyutils1:amd64
libklibc
libkmod2:amd64
libkrb5-26-heimdal:amd64
libkrb5-3:amd64
libkrb5support0:amd64
liblcms2-2:amd64
libldap-2.4-2:amd64
libllvm3.1:amd64
liblocale-gettext-perl
liblockfile-bin
liblockfile1:amd64
libltdl7:amd64
liblwres80
liblzma5:amd64
libmagic1:amd64
libmailtools-perl
libmount1:amd64
libmpc2:amd64
libmpfr4:amd64
libmtdev1:amd64
libncurses5:amd64
libncursesw5:amd64
libnet-dns-perl
libnet-domain-tld-perl
libnet-ip-perl
libnewt0.52
libnfnetlink0
libnih-dbus1:amd64
libnih1:amd64
libnl-3-200:amd64
libnl-genl-3-200:amd64
libnotify4:amd64
libnuma1
libobrender27
libobt0
libogg0:amd64
liborbit2:amd64
liborc-0.4-0:amd64
libp11-kit0:amd64
libpam-ck-connector:amd64
libpam-modules:amd64
libpam-modules-bin
libpam-runtime
libpam0g:amd64
libpango-perl
libpango1.0-0:amd64
libparse-debianchangelog-perl
libparted0debian1:amd64
libpcap0.8:amd64
libpci3:amd64
libpciaccess0:amd64
libpcre3:amd64
libpcsclite1:amd64
libpeas-1.0-0
libpeas-common
libpipeline1:amd64
libpixman-1-0:amd64
libplymouth2:amd64
libpng12-0:amd64
libpolkit-agent-1-0:amd64
libpolkit-backend-1-0:amd64
libpolkit-gobject-1-0:amd64
libpopt0:amd64
libprocps0:amd64
libproxy1:amd64
libpython2.7:amd64
libpython2.7-minimal:amd64
libpython2.7-stdlib:amd64
libpython3.3:amd64
libpython3.3-minimal:amd64
libpython3.3-stdlib:amd64
libquadmath0:amd64
librarian0
libreadline5:amd64
libreadline6:amd64
libroken18-heimdal:amd64
librtmp0:amd64
libsane:amd64
libsane-common
libsasl2-2:amd64
libsasl2-modules:amd64
libsecret-1-0:amd64
libsecret-common
libselinux1:amd64
libsigc++-2.0-0c2a:amd64
libslang2:amd64
libsm6:amd64
libsocket6-perl
libsoup2.4-1:amd64
libsqlite3-0:amd64
libss2:amd64
libssl1.0.0:amd64
libstartup-notification0:amd64
libstdc++6:amd64
libsub-name-perl
libswitch-perl
libtasn1-3:amd64
libtdb1:amd64
libtelepathy-glib0:amd64
libtext-charwidth-perl
libtext-iconv-perl
libtext-wrapi18n-perl
libthai-data
libthai0:amd64
libtiff5:amd64
libtimedate-perl
libtinfo5:amd64
libtxc-dxtn-s2tc0:amd64
libudev0:amd64
libudisks2-0:amd64
libunistring0:amd64
libunwind8
liburi-perl
libusb-0.1-4:amd64
libusb-1.0-0:amd64
libutempter0
libuuid1:amd64
libv4l-0:amd64
libv4lconvert0:amd64
libvorbis0a:amd64
libvorbisfile3:amd64
libvte-2.90-9
libvte-2.90-common
libvte-common
libvte9
libwebkitgtk-3.0-0
libwebkitgtk-3.0-common
libwhoopsie0
libwind0-heimdal:amd64
libx11-6:amd64
libx11-data
libx11-xcb1:amd64
libxapian22
libxatracker1:amd64
libxau6:amd64
libxaw7:amd64
libxcb-dri2-0:amd64
libxcb-glx0:amd64
libxcb-render0:amd64
libxcb-shape0:amd64
libxcb-shm0:amd64
libxcb-util0:amd64
libxcb1:amd64
libxcomposite1:amd64
libxcursor1:amd64
libxdamage1:amd64
libxdmcp6:amd64
libxext6:amd64
libxfixes3:amd64
libxfont1
libxft2:amd64
libxi6:amd64
libxinerama1:amd64
libxkbfile1:amd64
libxml2:amd64
libxmu6:amd64
libxmuu1:amd64
libxpm4:amd64
libxrandr2:amd64
libxrender1:amd64
libxslt1.1:amd64
libxt6:amd64
libxtst6:amd64
libxv1:amd64
libxvmc1
libxxf86dga1:amd64
libxxf86vm1:amd64
libyelp0
libzeitgeist-1.0-1
lintian
linux
linux-crashdump
linux-doc
linux-firmware
linux-generic
linux-headers-3.7.0-6
linux-headers-3.7.0-6-generic
linux-headers-3.7.0-7
linux-headers-3.7.0-7-generic
linux-headers-generic
linux-image-3.7.0-6-generic
linux-image-3.7.0-7-generic
linux-image-extra-3.7.0-6-generic
linux-image-extra-3.7.0-7-generic
linux-image-generic
linux-libc-dev:amd64
linux-source
linux-source-3.7.0
linux-tools
linux-tools-3.7.0-7
linux-tools-common
locales
lockfile-progs
login
logrotate
lsb-base
lsb-release
lshw
lsof
ltrace
make
makedev
makedumpfile
man-db
manpages
manpages-dev
mawk
memtest86+
mime-support
mlocate
module-init-tools
mount
mountall
mtr-tiny
multiarch-support
nano
ncurses-base
ncurses-bin
net-tools
netbase
netcat-openbsd
notification-daemon
ntfs-3g
ntpdate
obconf
openbox
openbox-themes
openssh-client
openssl
oracle-java7-installer
oracle-jdk7-installer
os-prober
parted
passwd
patch
patchutils
pciutils
perl
perl-base
perl-modules
plymouth
plymouth-theme-ubuntu-text
policykit-1
policykit-1-gnome
popularity-contest
powermgmt-base
ppp
pppconfig
pppoeconf
procps
psmisc
python
python-apt
python-apt-common
python-cairo
python-chardet
python-dbus
python-dbus-dev
python-debian
python-gconf
python-gdbm
python-gi
python-gi-cairo
python-gnome2
python-gobject
python-gobject-2
python-gtk2
python-keybinder
python-minimal
python-newt
python-notify
python-openssl
python-pam
python-pkg-resources
python-pyorbit
python-serial
python-six
python-twisted-bin
python-twisted-core
python-vte
python-xapian
python-xdg
python-zeitgeist
python-zope.interface
python2.7
python2.7-minimal
python3
python3-apport
python3-apt
python3-aptdaemon
python3-dbus
python3-defer
python3-distupgrade
python3-gdbm
python3-gi
python3-minimal
python3-pkg-resources
python3-problem-report
python3-software-properties
python3-update-manager
python3.3
python3.3-minimal
rarian-compat
readline-common
resolvconf
rsync
rsyslog
screen
sed
sensible-utils
sgml-base
sgml-data
shared-mime-info
software-properties-common
sound-theme-freedesktop
strace
sudo
synaptic
sysv-rc
sysvinit-utils
tar
tasksel
tasksel-data
tcpdump
telnet
terminator
time
tmux
ttf-dejavu-core
tzdata
ubuntu-keyring
ubuntu-minimal
ubuntu-release-upgrader-core
ubuntu-standard
ucf
udev
udisks2
ufw
unattended-upgrades
unzip
update-manager-core
update-notifier-common
upstart
ureadahead
usbutils
util-linux
uuid-runtime
vim
vim-common
vim-runtime
vim-tiny
w3m
wget
whiptail
whoopsie
wireless-regdb
wireless-tools
wpasupplicant
x11-apps
x11-common
x11-session-utils
x11-utils
x11-xfs-utils
x11-xkb-utils
x11-xserver-utils
xauth
xbitmaps
xdg-utils
xfonts-base
xfonts-encodings
xfonts-scalable
xfonts-utils
xinit
xinput
xkb-data
xml-core
xorg
xorg-docs-core
xserver-common
xserver-xorg
xserver-xorg-core
xserver-xorg-input-all
xserver-xorg-input-evdev
xserver-xorg-input-mouse
xserver-xorg-input-synaptics
xserver-xorg-input-vmmouse
xserver-xorg-input-wacom
xserver-xorg-video-all
xserver-xorg-video-ati
xserver-xorg-video-cirrus
xserver-xorg-video-fbdev
xserver-xorg-video-intel
xserver-xorg-video-mach64
xserver-xorg-video-mga
xserver-xorg-video-modesetting
xserver-xorg-video-neomagic
xserver-xorg-video-nouveau
xserver-xorg-video-openchrome
xserver-xorg-video-qxl
xserver-xorg-video-r128
xserver-xorg-video-radeon
xserver-xorg-video-s3
xserver-xorg-video-savage
xserver-xorg-video-siliconmotion
xserver-xorg-video-sis
xserver-xorg-video-sisusb
xserver-xorg-video-tdfx
xserver-xorg-video-trident
xserver-xorg-video-vesa
xserver-xorg-video-vmware
xterm
xul-ext-ubufox
xz-utils
yelp
yelp-xsl
zeitgeist
zeitgeist-core
zeitgeist-datahub
zenity
zenity-common
zlib1g:amd64

10. Novamente
sudo mount /dev/dvd /mnt
sh /mnt/VBoxLinuxAdditions.sun
init 6

11. Para habilitar Copiar/Colar e Arrastar/Soltar no VirtualBox:

Nos menus do VirtualBox:

Devices->Share Clipboard->Bidirectional
Devices->Drag ‘n’ Drog->Bidirectional
View->Auto-resize Guest Display

Instalando o WebGoat 5.4

1.Baixar o Webgoat 5.4
wget http://webgoat.googlecode.com/files/WebGoat-5.4-OWASP_Standard_Win32.zip

Screenshot from 2012-12-18 17:08:50

2.Descompactar WebGoat-5.4-OWASP_Standard_Win32.zip
unzip WebGoat-5.4-OWASP_Standard_Win32.zip

3.Instalar Oracle Java1.0.7 via ppa no Ubuntu 13.04
http://www.ubuntubrsc.com/instalando-oracle-java-7-ubuntu-ppa.html

sudo add-apt-repository ppa:webupd8team/java && sudo apt-get update && sudo apt-get install oracle-jdk7-installer -y

Screenshot from 2012-12-18 17:16:29

Screenshot from 2012-12-18 17:17:39

Screenshot from 2012-12-18 17:17:53

Screenshot from 2012-12-18 17:19:57

Screenshot from 2012-12-18 17:20:28

4. Executando o webgoat.sh e localizando erro da versão do Java:Screenshot from 2012-12-18 17:20:50

Screenshot from 2012-12-18 17:21:49

4. Verificando o arquivo webgoat.sh (original – versão para Sun Java 1.5):

nano webgoat.sh

# webgoat original
#! /bin/sh

SYSTEM=`uname -s`
CATALINA_HOME=./tomcat
PATH=${PATH}:./tomcat/bin
export CATALINA_HOME PATH

chmod +x ./$CATALINA_HOME/bin/*.sh
if [ $SYSTEM = “Darwin” ]; then
JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/1.5/Home
export JAVA_HOME

else

is_java_1dot5() {
if [ “X$JAVA_HOME” != “X” -a -d $JAVA_HOME ]; then
$JAVA_HOME/bin/java -version 2>&1 | grep ‘version \”1.5’ >/dev/null
if [ $? -ne 0 ]; then
echo “The JVM in \$JAVA_HOME isn’t version 1.5.”
exit 1
fi
else
echo “Please set JAVA_HOME to a Java 1.5 JDK install”
exit 1
fi
}

is_java_1dot5

fi

case “$1” in
start80)
cp -f $CATALINA_HOME/conf/server_80.xml $CATALINA_HOME/conf/server.xml
$CATALINA_HOME/bin/startup.sh
printf “\n Open http://127.0.0.1/WebGoat/attack”
printf “\n Username: guest”
printf “\n Password: guest”
printf “\n Or try http://guest:guest@127.0.0.1/WebGoat/attack \n\n\r”
sleep 2
tail -f $CATALINA_HOME/logs/catalina.out
;;
start8080)
cp -f $CATALINA_HOME/conf/server_8080.xml $CATALINA_HOME/conf/server.xml
$CATALINA_HOME/bin/startup.sh
printf “\n Open http://127.0.0.1:8080/WebGoat/attack”
printf “\n Username: guest”
printf “\n Password: guest”
printf “\n Or try http://guest:guest@127.0.0.1:8080/WebGoat/attack \n\n\r”
sleep 2
tail -f $CATALINA_HOME/logs/catalina.out
;;
stop)
$CATALINA_HOME/bin/shutdown.sh
;;
*)
echo $”Usage: $prog {start8080|start80|stop}”
exit 1
;;
esac

========

4. Modificar o webgoat.sh para Oracle Java 1.0.7

Adicionar a linha e modificar 1.5 para 1.7:
export JAVA_HOME=/usr/lib/jvm/java-7-oracle

#! /bin/sh

SYSTEM=`uname -s`
CATALINA_HOME=./tomcat
PATH=${PATH}:./tomcat/bin
export CATALINA_HOME PATH
export JAVA_HOME=/usr/lib/jvm/java-7-oracle
chmod +x ./$CATALINA_HOME/bin/*.sh
if [ $SYSTEM = “Darwin” ]; then
JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/1.5/Home
export JAVA_HOME

else

is_java_1dot5() {
if [ “X$JAVA_HOME” != “X” -a -d $JAVA_HOME ]; then
$JAVA_HOME/bin/java -version 2>&1 | grep ‘version \”1.7‘ >/dev/null
if [ $? -ne 0 ]; then
echo “The JVM in \$JAVA_HOME isn’t version 1.7.”
exit 1
fi
else
echo “Please set JAVA_HOME to a Java 1.7 JDK install”
exit 1
fi
}

is_java_1dot5

fi

case “$1” in
start80)
cp -f $CATALINA_HOME/conf/server_80.xml $CATALINA_HOME/conf/server.xml
$CATALINA_HOME/bin/startup.sh
printf “\n Open http://127.0.0.1/WebGoat/attack”
printf “\n Username: guest”
printf “\n Password: guest”
printf “\n Or try http://guest:guest@127.0.0.1/WebGoat/attack \n\n\r”
sleep 2
tail -f $CATALINA_HOME/logs/catalina.out
;;
start8080)
cp -f $CATALINA_HOME/conf/server_8080.xml $CATALINA_HOME/conf/server.xml
$CATALINA_HOME/bin/startup.sh
printf “\n Open http://127.0.0.1:8080/WebGoat/attack”
printf “\n Username: guest”
printf “\n Password: guest”
printf “\n Or try http://guest:guest@127.0.0.1:8080/WebGoat/attack \n\n\r”
sleep 2
tail -f $CATALINA_HOME/logs/catalina.out
;;
stop)
$CATALINA_HOME/bin/shutdown.sh
;;
*)
echo $”Usage: $prog {start8080|start80|stop}”
exit 1
;;
esac

Screenshot from 2012-12-18 17:22:31

Screenshot from 2012-12-18 17:22:53

Screenshot from 2012-12-18 17:23:39

5. sh webgoat.sh start8080

Screenshot from 2012-12-18 17:24:23

6. Abrir no firefox

Screenshot from 2012-12-18 17:26:51

7. Conectar-se a URL http://127.0.0.1:8080/WebGoat/attack e login e senha: guest

Screenshot from 2012-12-18 17:28:29

8. Pronto! WebGoat online.

Screenshot from 2012-12-18 17:28:55

Espero ter ajudado.

twitter
@firebitsbr

Ref:

http://webgoat.googlecode.com/files/WebGoat-5.4-OWASP_Standard_Win32.zip
http://www.ubuntubrsc.com/instalando-oracle-java-7-ubuntu-ppa.html
http://cdimage.ubuntu.com

Instalando Golang (Linguagem de programação do Google) + Eclipse

Instalei o Arch Linux, que é super otimizado e leve, meu laptop está utilizando apenas 80mb à 100Mb de RAM (sem muitas otimizações) apenas para SO e estou com uma área de trabalho rápida, leve e com uma certa usabilidade por simplicidade.

Estou começando com Golang (Linguagem de programação do Google) no VIM, mas fiquei curioso se funcionava tambem no Eclipse, então resolvi escrever este post.

Como instalar o Golang no Archlinux

A última versão do pacote padrão no Archlinux pode ser instalado via pacman:

#sudo pacman -S go

Mas há também pacotes AUR que estão mais atualizados e compilados pelos membros dos foruns, neste caso:

#sudo yaourt -S go-hg

Instalando o plugin Golang para eclipse

1. Clique em Help

2. Clique em Install New Software

3. em work with -> http://goclipse.googlecode.com/svn/trunk/goclipse-update-site/

4. Marque o plugin -> GoEclipse

http://goclipse.googlecode.com/svn/trunk/goclipse-update-site/

Setando o caminho do compilador Golang

1. Procure o local onde foi instalado o compilador

[firebits@archlinux ~]$ whereis go
go: /opt/go/bin/go

 

2. Configure desta forma:

Screenshot from 2012-12-11 19:24:43

3. Aparecerá algumas mensagens de reinicio do Eclipse, clique em “Yes” ou “”Ok” para confirmar

4. Na tela principal do Eclipse aparecerá novas opções com Golang, como na imagem abaixo:

Screenshot from 2012-12-11 19:27:42

OBS: Como estou apenas “conhecendo” essa nova linguagem e usando no Eclipse, pode-se existir outras configurações, mas vou postar em outras oportunidades no meu blog

twitter
@firebitsbr

referencias:

http://go-lang.cat-v.org/packages

http://code.google.com/p/goclipse/

OSSAMS: Gerenciamento de Segurança e Automação de Testes – Pentests

OSSAMS: Gerenciamento de Segurança e Automação de Testes – Pentests

Publicado em 27-10-2011 23:52

Cody Dumont, Adrien de Beaupre, e Darryl Williams são os desenvolvedores responsáveis pelo OSSAMS, que gradativamente, vem se tornando um poderoso sistema de gerenciamento de segurança e automação de testes. O sistema pode ser classificado como um verdadeiro framework para a colocação de arquivos de configuração, arquivos de segurança de verificação de dados (como Nessus), e outros dados recolhidos, durante uma avaliação de segurança ou teste de penetração, em um RDBMS.

Este framework foi projetada de forma semelhante ao Metasploit, ao SNORT, ou outros sistemas que permitem que a comunidade de segurança possa criar plugins para novas tarefas, quando necessário. O principal objetivo do OSSAMS é normalizar os dados, permitindo que o profissional de segurança possa melhor avaliar o estado atual da segurança de uma organização.

Links de Interesse:

[1] OSSAMS http://www.ossams.com/?page_id=46

http://www.ossams.com/?page_id=46

The OSSAMS team is comprised of Cody Dumont, Adrien de Beaupre, and Darryl Williams.  Cody is a Sr. Security Consultant for the NWN STAR team (www.nwnstar.com), Adrien is a security tester in Canada with Intru-Shun.Ca Inc., and Darryl Williams is an expert in database design and SDLC architecture.

Founder of OSSAMS

The founder of OSSAMS is Cody Dumont.  Cody Dumont currently works for the NWN STAR team (www.nwnstar.com) and has been an Information security professional for about 10 years, with 16 years in IT.  The initial idea to create OSSAMS came to Cody as he analyzed data from many security assessments and tried to figure out a way to combine the data together from Nessus, Nmap and firewall configurations.  Realizing the only tools that did functions similar to this now were extremely expensive commercial tools, Cody decided to create a new project to solve this problem.  Cody also has the Network Configuration Builder Blog located at www.melcara.com.

Cody Dumont is a former Marine turned Geek, then Security Geek.  Cody started in IT during March of 1995, while in the Marines as a former 0311 (Infrantry) attending MRC (Micro Computer Repair Course) at 29 Palms CA.  Cody then went on to be awarded the Navy Achievement Medal for the IT related work performed for the 24th MEU.  After leaving the Marine Corps with a bad knee, go figure, he started working a for a few companies in the North East.  Cody currently works for NWN Corporation http://www.nwnit.com as a Sr. Security Consultant.

Cody currently holds a MS in Information Technology (Specialty in Information Security) from Capella University, a BS in Information Management from Daniel Webster College.  Cody has many industry Certs, starting with MCSE (NT4), MSCE (2k), Exchange (2K), CNE (5), A+, Security +, CCNA, CCNA Security, CCNP, CCIP, CISSP, CCSP, RSA enVision CSE and the GCWN.

Security Assessment Architect

Cody Dumont met Adrien de Beaupré at SANSFire Baltimore in 2010, where Adrien gave a presentation called “Network Vulnerability Assessment Automation and Reporting”.  During this talk Adrien discussed how he was creating tools to put data from Nessus, Nmap, and others into a database for easier analysis.  Then to Cody’s surprise, Adrien mentioned Cody’s Nessus parser (www.melcara.com).  Cody was extremely impressed with Adrien’s work.  Over the next 6 months or so, Cody and Adrien exchanged emails about their various parsing tools.  When Cody came up with idea for OSSAMS, Adrien was the first security professional he thought to call.

Adrien de Beaupré is a senior IT Security Consultant in Ottawa at Intru-Shun.Ca Inc., with over 16 years experience in security testing and incident response.  Adrien has performed many vulnerability assessments, penetration test, and incident management engagements of network hosts and web based applications for both Government and private sector clients. Adrien de Beaupré holds the ISC2 CISSP, GWAPT (GIAC Web Application Penetration Tester), GPEN (GIAC Penetration Tester), GCIH (GIAC Certified Incident Handler) GSEC (GIAC Security Essentials), OPST (OSSTMM Professional Security Tester), OPSA (OSSTMM Professional Security Analyst, and MCSE (NT4.0 and 2K). He is also a certified OSSTMM instructor. As a volunteer member of the SANS Internet Storm Center (isc.sans.edu) he performs incident handling and threat analysis.

Adrien specializes in network and computer security, incident response, digital forensics, vulnerability assessments, penetration testing, and technical instruction. He is a contributor to OSSTMM 3.0 and Hacking Exposed Linux 3rd Edition. As well he has contributed to open source projects such as nikto, watcher, w3af, and Zed Attack Proxy (ZAP).

Data Structure Architect

Cody met Darryl Williams at Daniel Webster College (DWC) in Nashua NH back in 1999 where they both earned a BS in Management and Information Technology.  Cody was amazed at Darryl’s thoroughness, ability to communicate, and solve data structure problems. Darryl also possessed a great deal of knowledge of, and experience with, various project implementation and software development methodologies. During their time at DWC, Cody learned more from interacting with Darryl than from any classes.  Darryl has an unmatched ability to look at a business process to flow and create a data structure around it.
Darryl Williams has over 20 years of life sciences industry experience, including 10 years in pharmaceutical Marketing and Sales IT. Darryl has managed over 15 full project life cycles with budgets from $25k to over $13M.
Darryl specializes in Program Management; Data Warehousing, Entity-Relationship, Transactional and Analytic Data Modeling; Business Intelligence, Analytics and Reporting; Master Data Management; Customer and third-party Pharmaceutical Data Integration; Business Process Analysis and Business Rules Management. He holds a BS in Management and Information Technology, a Master’s Degree in Management from Cambridge College and is a certified Project Management Professional (PMP).

Graphic Artist

Leah Dumont is the youngest sister of Founder Cody Dumont.  Leah is a self-employed graphic artist in Las Vegas.  Leah is the creator of the logo and other upcoming graphs for the OSSAMS project.

As a fresh, young designer with a background in offset printing and a bachelor’s degree in graphic design, Leah’s work stands apart from the over-saturated field of today’s market. In a world where anyone with a computer can call themselves designers, Leah strives for higher standards through studying the importance of fonts, colors and layout design. Leah’s understanding of the dynamic relationships between these elements separates her from the crowd, ensuring her work is original, modern and competitive.

Quick and Dirty – Obtendo o arquivo /etc/passwd de um servidor web Linux

Quick and Dirty – Neste Poc, foi criado um servidor com Ubuntu 12.04 LTS Server.

Como fiz na pressa para aprendizado, então falta classificar se seria LFI ou RFI pela owasp.org; criar mitigações para este problema (i.e modsecurity ???, ou outro WAF); qual seria o tipo de solução mais definitiva, etc, etc.

Então em outro post, vou detalhar mais sobre isso.

Este passo seria em post-exploration, ou seja, um web shellcode já foi utilizado no alvo com sucesso já esta pronto para executar o pseudo exploit:

US1204-PoC0001-0001

US1204-PoC0001

US1204-PoC0001-0002