Welcome back to the radare2 reversing tutorials. If you’ve missed the previous
parts, you can find them here and
here.
Last time we’ve used the rabin2 application to view the strings found inside
the challenge01 binary to find password candidates. Based on the results we
looked into the assembly to find the correct password. In this post, we’ll go
through the next challenge and try out some of the features provided by radare2.
I’m currently involved in a “DMZ Redesign” effort in a sufficiently large
enterprise (800+ hosts in “the DMZ”) and I thought this might be an opportunity
to reflect on some aspects of “DMZ networks” in a series of posts.
Some of you already know that, at ERNW, we have a
tendency to discuss stuff starting with some formal definitions and a bit of
abstract (overview) approach. It’s not different this time ;-), so let’s first
find out what the term “DMZ” means, what such a thing is considered to be and to
deliver, and what the actual state of affairs might be in 2016. Different people
within an organization might have quite different understandings in this
space.
Further it’s entirely possible that the DMZ networks are not operated by
a company themselves but by an outsourcing partner which then means that
“placing a system in the DMZ” becomes “ordering a DMZ [network] port” by means
of some web-based procedure or ticket system, which in turn might have a number
of interesting implications (we’ll have a dedicated post on those).
Today we started publishing several of our hardening documents to a
dedicated GitHub repository — and we’re
quite excited about it! It took a while to develop a suitable markdown template
to support all the requirements you have when you write a hardening guide, but
we’re online now!
At the moment, only a few hardening guides are online, but that
should continuously increase in the future.
After seeing
Christopher’s post I
decided to create a proof using GNS3 and Virtualbox.
The aim is to perform the exact attacking using Antonios Atlasis’
Chiron tools and run a Wireshark packet
capture to prove the hop limit drops below 255.
The following topology is used in GNS3:
The
routers used are Cisco C372 and the machine labled Ubuntu is running 14.04 LTS
Ubuntu Desktop, default installation. F0/0 is on the right and F0/1 is on the
left.
Welcome back to the radare2 reversing tutorials. If you’ve missed the intro, you
can find it here.
The last time you got the challenge01 binary and your goal was to find the
password for the login. Let’s see how the application looks like:
$ ./challenge01
##################################
# Challenge 1 #
# #
# (c) 2016 Timo Schmid #
##################################
Enter Password: test
Wrong!
The first and simplest step would be to look for strings inside the binary. We
could do this either by using the unix utility strings or the binary analyzing
binary from radare rabin2:
Just a few days ago I had a blast again at this year’s Black Hat. Some of the
talks were really worth listening to, so I wanted to point them out and give a
short summary.
They had the last slot at the last day of Black Hat which resulted in a kind of
empty room, but in my opinion it was an awesome talk and I even had the pleasure
to meet these two guys at our ERNW dinner.
In a recent assessment, we had to evaluate how Microsoft’s System Management
Server (SMS) certificate management solution (CMS) stores and handles
certificates. This question came up because sensitive, encrypted user
certificates were to be stored in the SMS CMS. Due to the sensitivity of the
handled certificates, we assessed the protection capabilities of the certificate
management solution against extraction attempts from a local attacker with
administrative privileges.
How did we do it?
We determined a five steps approach to gain access to the certificates and be
able to decrypt the accessed certificate material:
As some of you may know, there is a “new” reverse engineering toolkit out there
which tries to compete with IDA Pro in terms of reverse engineering. I’m talking
about radare2, a framework for reversing,
patching, debugging and exploiting.
It has large scripting capabilities, runs on all major plattforms (Android,
GNU/Linux, [Net|Free|Open]BSD, iOS, OSX, QNX, w32, w64, Solaris, Haiku,
FirefoxOS and even on your pebble smartwatch 😉 ) and is free.
Most of you that are pentesters may have already tested plenty of webservices
using SOAP (Simple Object Access Protocol)* *for communication. Typically,
such SOAP messages are transferred over HTTP (Hypertext Transfer Protocol) and
are encapsulated in XML (*Extensible Markup Language*). Microsoft has developed
different representations of this protocols to reduce the network load. As these
representations/protocols aren’t really covered by typical tools out there, this
post will show you some of them, and a proxy which can be used to simplify the
testing.
I won’t be in Vegas for Black Hat this year as there’s a direct conflict with
one of my kids’ birthdays, but I thought one or another reader might find it
helpful to get some inspiration as for selecting the talks to catch (not least
as there’s so many interesting ones). I hence decided to quickly write this
post.
Here’s my would-be schedule for the first day (second day to follow, maybe, in
another post), under the assumption to attend exactly one talk per slot. I could
give a longer rationale per talk than the one below, based on several (mostly
technical) factors, but this is just about providing suggestions in a brief
form.
Disclaimer: I was on the
BH guest review board this year so
I might be biased in some cases.