Since I'm 6 drinks in for 20 bucks, let me tell you all about the story of how the first Microsoft Office 2007 vulnerability was discovered, or how it wasn't.
This was a story I was gonna save for a book but fuck it, I ain't gonna write it anyways.
So my first month at working at eEye in late 2006 good ol Microsoft announced Office 2007.
They said they added a shit ton of security including safe int, sandboxing, code analysis, and malformed doc detection.
I told my boss I was gonna break it.
So I started fuzzing by hand
I'm the kind of sicko who can open a Microsoft office document in a hex editor and start telling you what it is all about just by scrolling down.
I have spent an embarrassing amount of time looking at BIFF format in a hex editor, trust me it's nothing special
So I start manually fuzzing legacy word documents, I literally bring up office 6.0 documents and start manually fuzzing the legacy controls in them the day office 2007 drops.
After about 36 hours I get a promising crash in good ol Word . Exe
So I start digging in and it is from a legacy conversation function converting an ancient word art structure into a modern structure and it incorrectly trusts a user calculation to control a pointer
Game over
Sorry I keep getting served drinks because I dropped a 50 dollars
This is literally dumb amount of drinks
Game over - or so I thought
So at eEye we have a senior review every bug we report and my boss looks over this issue and gives it the green light.
I take it to @marcmaiffret and he sends it right over to Microsoft and starts a press release as one does
So MSRC starts reviewing this cluster fuck and as your can imagine since it's a brand new product they call in their A Team to review it, including none other than David LeBlanc, the Creator of Safe Int and a huge component of the safety of office 2007
(I'm sorry David for this)
Anyways David and his team look over our crash
Meanwhile we are pumping press releases left and right because we got an 0day in office 2007 in 2 days after release
We are high fiving each other in the office, literally strutting around like Rockstars
Except Le Blanc comes back & says
"So. About that crash.. It's only exploitable when a debugger is attached."
...
So we look it over.. there's a fucking 0xCC op code there that we blew past in our code path.
We tested and replicated with a full exploit only with a debugger
I switched to mojitos because they are 4 dollars.
Anyways so review the bug and holy shit he's right
We submitted an exploitable condition only under a debugged process and we literally contacted every press release
Every single one
There's like 8 major news articles saying we have an exploit in office 2007 in under 48 hours
So Marc calls us in our office and sits on us down and tells us the news
I have literally been on the team for less than 2 months
I feel fucking awful
I feel fucking dumb AF
I have let down this incredible team
I am utterly devastated
Marc says well, I am not retracting the press release, so you all better give me an 0day
We will tell MSRC we sent the wrong file, in the meantime find me an 0day
So me, feeling awful I start manually fuzzing again, by myself terrified for my life. I have to find an 0day ASAP to save face. Like yesterday. I'm over my head but I go
And then to my dismay the entire research team comes over and goes "we are in this together. Let's do this"
And I don't mean just like let's research this and get a bug
We are all in the office for days, 24 hours, ordering pizza, ordering mountain dew, reversing, making fuzzers, we are all in this together.
Every single researcher
We made 4 different fuzzers, an analysis tool kit, and a binary decompiler of the BIFF format
Drew Copley (RIP) makes an HTML fuzzer for Web objects
Yuki Ukai and Derek Soeder start reversing every crash we come up with.
Me and Andre are fuzzing like no one has ever fuzzed
3 days go by, we all haven't left the office
Girl friends and wives have called and yelled, pleaded and begged for each of us to come home
Every single member of the team stays
I feel guilty AF and keep at it
Day 4, I'm in a state of delirium
The office smells of dirty researcher but we all have found so many close AF vulns but nothing serious
I write a new fuzzer
There's a stack of pizzas ordered to the office that comes up to my chest
Im in a half passed out state, filled with delirium, pizza half in my hand barely conscious when I hear a fuzzer really hit
I spill a mountain dew code red while I come back into consciousness
The crash has a a full EIP overwrite
0x4141414141
Yuji looks over and goes "oh shit"
Derek awakens and runs over and he's like ... Oh really?!!!
And my boss Andre is like
Remove the Debugger and run it again
I'm 14 drinks in everyone
The bartender has given me the eye as in "sir what are you doing standing"
So I'm doing what every drunk AF person would do
Switching to Scotch
Update: I just got an 18 year old scotch for $15 dollars.... This is so dumb
So yuji and Derek start reversing this crash.
It's in publisher.
Fucking publisher, the web site developing tool in office that no one uses.
What the actual fuck.
We don't care we are all exhausted at this point, we just want something, literally anything.
Derek and Yuki start reversing the shit out of this bug. They are literally going so hard core, reconstructing structures and white boarding this and the adjacent functions.
This is before office had symbols and these 2 bad asses to are literally making symbols on the fly
God fuck I'm so fucking drunk
So these 2 bad asses are literally IDAing this shit out of their heads
And I remember and they look at me and go "Greg! This crash is good, is a pointer overwrite because of an integer overflow"
We retest without a debugger... Hell we retest on a fresh os install
It
Fucking
Crashes
At
The
Same
Spot
0x4141414141
The entire research office explodes
We fucking did it
News articles have been asking us for updates
Microsoft has been asking us for further clarification
We have found a legit vulnerability and it bypasses safe int
So we are crying, screaming, throwing up, shitting, rolling on the floor, options eruptions, parties
The entire research team is screaming
I am literally crying because this is my first professional job and I had fucked up so bad, but every single researcher there stayed
Not a month goes by where I don't think about how much of bad asses each an every one of you are
I just got handed a mojito??????????????!!!??????
Fuck it I'm drinking it
Fucking crushed that shit
Anyways
So crying shitting partying researchers at eEye
We write a report and slam that right over to MSRC, high fiving and partying with pizza we all finally go home for the first time in days
Wait I'm so drunk I fucked up this thread
Fuck I'm trashed
Anyways we wrap that bug and slam that at MSRC
mSRC replies and they are like "oh this looks like it might be something"
Meanwhile, David LeBlanc is on horseback 100 miles out of Seattle on vacation enjoying his time off according to his blog
But the bug is in SafeInt, his baby
So guess fucking what
Microsoft recalls his vacation
David LeBlanc literally blogs about his vacation being cut
This man was enjoying touching grass out in the world
And we fucking broke something so bad they recalled him vacation
On horseback
In the wilderness
David, man, I'm really sorry.
I've been wanting to tell you I'm sorry for like nearly 20 years about this
I
Am
So
Fucking
Sorry
To
Have
You
Come
Back
On
Vacation
So we get a receipt from Microsoft.
They called back LeBlanc, Marc is tossing even more news interviews
Meanwhile Derek Soeder has written a full sexy RCE with kernel privilege exploit that he combined with his CSRSS Windows 7 LPE in a chain with us.
He even added C2 via ICMP
So what does eEye do now?
We blast the press, we show off full demos, we write a core exploit module, we write a custom office to kennel c2 exploit chain (rare AF in 2007)
We own this exploit, we work it
We make that fur coat fucking pur
Guys I just got handed another drink??? Wtaf I won't even know what it is
Ok crushed that mojito so I ordered another cuz why the fuck not
So MSRC responds with an email
Marc gathers all of us around to open it together
We, delirious, gather around open the email
.......
Fucking confirmed the vulnerability
SafeInt wasn't applied to the structure we found
Get
Fucked
We did it
We found a legit zero day in a major product, office 2007, within the first week of release
Everyone is relieved
Everyone hugs
Everyone goes home finally
Another drink cuz we ball
So after MSRC confirms, we write up the blog post, we write up the advisory, we get a CVE, we write a sexy write up
Here it is in jpeg form
It gets patched in MS07-037 and assigned CVE-2007-1754
But that's not all....
Since we are eEye we always have greetz in our advisory, just like the old school VX authors in their zines
So what do I as the founder add into the greetz????
100 miles rides is absolutely David LeBlanc. 💀💀💀💀💀💀💀💀💀
David. LeBlanc
I will happily buy you a drink any time, any where
I have felt guilty about this for nearly 20 years.
I am so so so so so sorry
David sent us an email intricately detailing how bad ass safeint was and how it protects against integer overflows and how insanely cool it is
He's right
It's is
But we found the section of code it somehow didn't get applied too
And that's all it took
Office 2007 wrecked, destroyed, defeated
You can probably find some live demo of Derek Soeders ICMP C2 root kit that he demoed live on some news using this
In the end the full write up goes here
It's my first big exploit at eEye
I honestly have the entire research crew to thank for the fuck up turned success.vulners.com/securityvulns/…
And I just wanna say 2 things about this thread
Fucking up is hard, it sucks, we all do it, it's what you do immediately after is what matters. Roll with the punches, get up, fight back. You got this. It is ok to fuck up, we all do it. We don't talk about it. But we do it
And the second thing:
Your team makes a difference.
I was lucky enough to be one of the last researchers hired at eEye
It was a legendary period.
I was the dumbest person in the room and they rallied every time as a team
I have never been on a team like this except currently at @HuntressLabs
This team stands by and has every single aspect the same as back in 2007 eEye
Having a team that has your back like this makes a world of a difference
@HuntressLabs Being on the shoulder of giants makes me truly appreciate the 20+ years I have been in this industry.
Thank you for reading thru this drunk thread
This industry is crazy, and the fails we have aren't talked about
Please help normalize fucking up but owning it
I just got served a fucking pizza, and they don't serve pizza here
I just wanna end this thread with one last thing
I love this community
I am not perfect, no one is
I have fucked up so times in my career
We all do and it happens
What matters is how we get back up, do it all over again, and help others learn from our mistakes.
Love you all
• • •
Missing some Tweet in this thread? You can try to
force a refresh
12 years ago my life was saved by Hurricane Sandy when I was supposed to be in a building performing incident response that got blown up.
There are not many public stories of physically targeted incidents directly related to cybersecurity but they exist.
This is the story
In August of 2012, Kaspersky and Symantec both discovered a relatively new malware named W32.DistTrack this would later be infamously known as Shamoon Wiper.
It's now public that Shamoon hit several middle eastern companies including Saudi Aramco.
I was on the original IR team
As now disclosed by others who were on the team, the attack probably originated by targeting IT workers and was planned for months. The delivery mechanism was advanced and targeted specifically for each target.
In October of 2012 I was asked to go to Saudi Arabia to do IR
I have now heard of 2 extortion attempts originating from the AI girlfriend site Muah breach.
Both victims are devs & they received emails with credible data to confirm they have seen their sensitive content
One requested the victim give them VPN access
A 🧵
Security teams should be aware of sensitive breaches like this - as this can now jeopardize their entire company
Work with your team to put in place work place awareness and a safe place to have employees report extortion.
Extortions at this stage can also include false accusations - an attacker could easily put out content to make a victim seem like they were an individual in the dump even though they weren't.
They can use this to attack someone's reputation and use it for leverage as well.
A 🧵I wanted to share one of my more recent successful red team campaigns so others can test & tabletop
The client, like many others recently, implemented an approved internal AI interface for code questions and searches
This was essentially a wrapped chatGPT UI + file search
The site was 3rd party developed and has several implementations before rolling out in stages to all departments
For this scenario the goal was to compromise a separate dev and finance team with limited access in order to gain access to the production environment and financials
The attack first created a spoofed Google cloud and email to appear similar to the 3rd party company who used this service.
At this point a spoofed email was sent to several junior developers and low level HR people on the target teams posing as the AI portal dev team.
It's 11pm and the VC bros next to me are starting a company and are gonna roll out WordPress as their CRM, and they think they can manage it themselves with a Microsoft Azure cloud and MongoDB. None of them have admin experience
💀💀💀💀
This is at a hotel bar
They are in the carbon footprint reduction industry, I have no clue wtaf that involves but it sounds like a lot of cold calling and selling people materials from what I heard
Guys they are discussing WordPress security and how one is their previous companies had to wipe everything "because a baddie broke their WordPress and shit"
Are these your sandboxes leaking out information that allows attackers to visibly fingerprint your environment and evade analysis?
This 🧵is a deep dive into this method and why I find it relatively primitive yet, elegant & efficient as a sandbox system bypass.
For those watchful eyes, they might have noticed the leaked information in the above screenshot is XML format of the entire system settings.
How much settings? 118,000 bytes worth detailing everything from Hardware, Firmware, BIOS, manufacturers, PNP devices, printers etc.
This information comes from Microsoft Windows System Assessment Tool aka WinSAT. It has been implemented since Windows Vista and can be read all about here:
PSA In the last week I have seen 3 examples of a relatively new strategy targeting telcos & iPhones of victims
With the increased measures against SIM Swapping, it seems attackers are switching over to 2 other methods to compromise phones
- Call Forwarding
- Parental Tools
Both attacks are similar in which attackers (likely related to Lazarus) are either social engineering telcos or using an insider at these companies to conduct these attacks.
In all of these cases it was leading up to ATO of iCloud and/or password managers
The call forwarding attack is relatively straight forward:
Attacker calls in telco and social engineers the operator to convince the agent to switch a line to call forwarding because of vacation.
The attacker then forwards the number to a VOIP number they control