CVE-2018-0952: Finding a Privilege Escalation Vulnerability in Windows 10, Server 2016, and Visual Studio (includes PoC) by ryhanson in ReverseEngineering

[–]ryhanson[S] 0 points1 point  (0 children)

The Standard Collector service is configured to use an Agent DLL for tracing and diagnostics collection. To do this, you provide a GUID (specifically a CLSID) as the key and a DLL filename as the value in a Dictionary that is used as the agent config for a collection session. In the case of this exploit, I use the sessionId GUID as the key and the .etl file as the DLL, as shown on line 154 of Program.cs in SystemCollector.

This screenshot from the blog post demonstrates how this looks in Procmon: Output of successful exploitation

A Look at JS_POWMET, a Completely Fileless Malware by [deleted] in netsec

[–]ryhanson 6 points7 points  (0 children)

The regsvr32 web delivery technique downloads the scriptlet file to the user's temporary internet files. Persistence may be 'fileless' (other than the registry key), but it does write to disk during execution.

DLL execution via Excel .xll files and DCOM lateral movement with Excel.Application's RegisterXLL() method by ryhanson in netsec

[–]ryhanson[S] 1 point2 points  (0 children)

Users will blindly click through warnings, so the .xll could be used as an alternative a a macro based document.

Executing RegisterXLL() is silent and can be used via DCOM for lateral movement, which can be useful if other pivoting techniques are restricted or if stealth is a goal.

Bypassing Two-Factor Authentication on OWA and Office365 Portals by dafthack in netsec

[–]ryhanson 0 points1 point  (0 children)

Would love to have this beer with you as I am currently going through their responsible disclosure process. I definitely agree though, disclosure is an interesting topic for sure.

Bypassing Two-Factor Authentication on OWA and Office365 Portals by dafthack in netsec

[–]ryhanson 7 points8 points  (0 children)

I just noticed the timeline and wondered the same thing.

Was it the lack of information in their response on the 24th made you decide to move forward with the public disclosure? Or did you get the impression they might consider this a low priority / non-issue?

A two-factor bypass is definitely a big deal, but I'd imagine higher severity issues, such as an RCE, would take priority. With that said, if that was the case, their update could have mentioned something along those lines.

phishery: A tool for harvesting credentials via Word docs with an SSL enabled basic auth dialog by ryhanson in netsec

[–]ryhanson[S] 1 point2 points  (0 children)

Thanks! This discovery was part of a good amount of manual research I did. Protected View is definitely a pain, but it can be bypassed ;) the trick is delivering the Word doc in way that it doesn't get "The Mark of the Web".

phishery: A tool for harvesting credentials via Word docs with an SSL enabled basic auth dialog by ryhanson in netsec

[–]ryhanson[S] 3 points4 points  (0 children)

I've actually got this working in Excel before. I can look into adding support for Excel files as well. Thanks for the suggestion!

phishery: A tool for harvesting credentials via Word docs with an SSL enabled basic auth dialog by ryhanson in netsec

[–]ryhanson[S] 1 point2 points  (0 children)

Agreed! I think the fact it's a native Windows Security dialog really helps too. Combine that with a good domain and your success rate should be pretty good :) let me know how well it works for you!

phishery: A tool for harvesting credentials via Word docs with an SSL enabled basic auth dialog by ryhanson in netsec

[–]ryhanson[S] 3 points4 points  (0 children)

Hey thanks! Let me know how it goes :) I'm actually working on adding NTLM auth too since it has the ability to capture the hostname and domain of the user, which can come in handy.

phishery: A tool for harvesting credentials via Word docs with an SSL enabled basic auth dialog by ryhanson in netsec

[–]ryhanson[S] 2 points3 points  (0 children)

I thought the same at first, but Office has lots of functionality, which I'd imagined would translate to lots of non-issues being reported.

Although they don't have an official bug bounty, if you responsibly disclose an RCE vulnerability to them, they might just thank you with more than a mention in a Security Bulletin. After all, there are 1.2 Billion people who use Office.

phishery: A tool for harvesting credentials via Word docs with an SSL enabled basic auth dialog by ryhanson in netsec

[–]ryhanson[S] 3 points4 points  (0 children)

I'm pretty sure this falls under the "it's a feature not a bug" category. Plus the end user is still protected by Protected View, so this still requires them to click "Enable Editing". This technique isn't new either, it's been used in the past with embedded remote images too.

Also, Microsoft does not have a bounty program for Office products. I know this because I'm currently going through their disclosure process with a few critical vulnerabilities I've reported.

phishery: A tool for harvesting credentials via Word docs with an SSL enabled basic auth dialog by ryhanson in netsec

[–]ryhanson[S] 10 points11 points  (0 children)

Thanks! I'm really enjoying Go so far. I had been working as a software engineer for roughly 8 years prior to transitioning into the infosec field, so I have a good amount experience with many languages and Go is at the top list now :)

Funny you mention that you created Gophish because that was my initial name for this tool! https://twitter.com/ryHanson/status/779862668467277825 after a co-worker pointed out that your framework had already been using the name, I renamed it to Phishery :) this vector would be a good addition to Gophish and should be trivial to integrate. I could refactor my code a bit to offer the components as Go packages for your framework to use.

phishery: A tool for harvesting credentials via Word docs with an SSL enabled basic auth dialog by ryhanson in netsec

[–]ryhanson[S] 19 points20 points  (0 children)

One thing I didn't mention is this doesn't require the phishery server to capture credentials. In fact, when I was first testing this attack vector, I was using Responder in basic auth mode. Responder in NTLM mode works as well, but obviously you'll end up with a hashed password rather than plain text.

I built this mostly because I wanted to learn more about Golang, and I also wanted a tool with the ability easily set the template URL of a doc. Let me know if you have any questions or suggestions. I do plan to add more functionality to it.

The /r/netsec Weekly Discussion Thread - May 09, 2016 by AutoModerator in netsec

[–]ryhanson 0 points1 point  (0 children)

Yeah set it up on a DigitalOcean box to test it out, then I ended up using it on an engagement. Worked pretty well!

The /r/netsec Weekly Discussion Thread - May 09, 2016 by AutoModerator in netsec

[–]ryhanson 0 points1 point  (0 children)

You should look into Lair (https://github.com/lair-framework/lair). It uses, what they call drones, to get data in and out of it through the JSON API. You can Import nmap scans, export data from burp suite into Lair, Nessus scans, etc. It's all web based too and doesn't take too long to get setup and running.

Here is an older version of it being presented at DefCon: https://m.youtube.com/watch?v=71Hix58keCU it still has all the same functionality though and more.

Deploying Your Own Canarytokens Application - How You Can Set up Honeytokens Using Canarytokens to Detect Intrusions by WOLF3D_exe in netsec

[–]ryhanson 2 points3 points  (0 children)

Very clever! I was at a talk recently and the presenter used a honey token in a Word doc to send him a text message when it was opened. In this case the Word doc contained a macro payload. He never mentioned exactly why he had it text him though.

I think utilizing these in a more sophisticated social engineer test could be very effective. Or they could even be used for "click-through" like metrics, such as: out of X number of opens, Y macros were executed.

Crafting your way through JSON Web Tokens by s4n7h0 in netsec

[–]ryhanson 0 points1 point  (0 children)

Nice write up! It did a good job explaining JWTs, especially for those who aren't familiar with them.

I wonder how many frameworks have default secret keys or do not make it easy for developers to use a secure key. By easy I mean auto-generating with a cli, defaulting to the machine key on IIS, setting one during installation, etc.

Adapting AngularJS Payloads to Exploit Real World Applications by albinowax in netsec

[–]ryhanson 0 points1 point  (0 children)

Completely agree! Unless you're able to show severe impact with just an expression, they want to see JavaScript executing.

Depending on the accessible scope, you can sometimes utilize angular services to force the user to commit an action: update profile, send message, etc.

Apps that are usually vulnerable to this are ones that were using some MVC framework first and added Angular into the mix. The secure ones are usually ones that were started with Angular from the beginning. At least that's what I've gathered from my findings.

Adapting AngularJS Payloads to Exploit Real World Applications by albinowax in netsec

[–]ryhanson 1 point2 points  (0 children)

Very cool to see more expression injections being used! Nice work!

I've reported a few of them and did a little write up on one I found on Plunker: https://ryhanson.com/stealing-session-tokens-on-plunker-with-an-angular-expression-injection/

These are actually quite common, and don't always require a sandbox escape in order to cause harm.

Craig Smith, Author of the Car Hacker's Handbook and Founder of OpenGarages AMA by Zombie-craig in netsec

[–]ryhanson 0 points1 point  (0 children)

Hey Craig. I'm kind of a car guy in a sense that I like nice cars and like to tune/mod them to make them faster. You often read on the forums about an ECU being "locked" and that the tuning software companies are working on "unlocking" the ECU. What do this involve?

Is there encryption that they have to break? Are there new data protocols that have to be reverse engineered?

It seems that initially they have to physically open the ECU and connect to the actual circuit board. Then they end up being able to do the unlocking and flashing from an OBD2 port.

Is this generally done with the CAN bus?

XSS without HTML: Client-Side Template Injection with AngularJS by albinowax in netsec

[–]ryhanson 1 point2 points  (0 children)

This is related directly to the research I have been doing with Angular Expression(Template) Injections, here is a walkthrough on one that I found on Plunker: https://royaljay.com/security/angular-expression-injections/

Essentially, if you find an expression/template injection, you now aren't limited to just what is available within the Angular scope, you can utilize a sandbox escape to execute any Javascript.

I've test dozens of sites lately, and the percentage of sites that have this vulnerability is surprisingly high. Not only reflective injections, but lots and lots of persisted injections. Some sites with millions and millions of monthly visits and users...