- MCP server with stdio transport for local use - Search episodes, transcripts, hosts, and series - 4,511 episodes with metadata and transcripts - Data loader with in-memory JSON storage 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
264 lines
24 KiB
Plaintext
264 lines
24 KiB
Plaintext
Episode: 3514
|
|
Title: HPR3514: Hacking Stories: Soft Drink
|
|
Source: https://hub.hackerpublicradio.org/ccdn.php?filename=/eps/hpr3514/hpr3514.mp3
|
|
Transcribed: 2025-10-25 00:49:13
|
|
|
|
---
|
|
|
|
This is Hacker Public Radio Episode 3514 for the first ever 20th of January 2022.
|
|
Today's show is entitled Hacking Stories, Soft Drink, It Is Hosted by Operator and is
|
|
about 21 minutes long and carries an explicit flag.
|
|
The summary is, I talk about how all the penitor's story is.
|
|
Hello everyone and welcome to another episode of Hacker Public Radio with your host.
|
|
Today we're talking about stories, Hacker stories again. This one's again from Way far back.
|
|
A lot of these are way far back, so the order of events may not be right.
|
|
There might be a mix in the match between the two, but in general I can remember which
|
|
engagements aligned with which activities in general.
|
|
Anyone, this was about a big soft drink manufacturer or distributor, whatever,
|
|
and was with a new guy who was on our team. Pretty green, smart guy,
|
|
you know, really self-motivated and started getting into his own,
|
|
finding his own groove pretty quickly after one or two assessments.
|
|
So anyways, we get on site and usually we have a thing called a kind of a kickoff meeting.
|
|
So you get there, you get on site, maybe the managers with you, key, you know,
|
|
stakeholders within the meeting attend that first meeting and usually it's in the morning on the
|
|
first day of actual testing or maybe it's a day before if you're lucky.
|
|
But generally speaking, you just go there and you explain what your approach is and make
|
|
everybody comfortable, establish points of contact, if it's after hours, you know, maybe there's
|
|
some other moving parts to that assessment. In general, it's pretty standard stuff.
|
|
The key about this one is that I showed up on site, had my little USB
|
|
Ducky thing, which would give you a PowerShell payload.
|
|
Well, even things like Windows Defender and stuff like that.
|
|
Nowadays we'll pick all that up or any EDR tool will pick most of that up, the simple stuff.
|
|
But this was before kind of the heyday of been testing where you didn't have the role
|
|
your own thing. You just go and get heaven download something and it would work.
|
|
So anyways, I had this USB key that would give you a shell via physical access.
|
|
So somebody left their workstation unlocked, you plug the key in and you get a shell to wherever you
|
|
want. Now these were shells were set up internally. So I had a host on my laptop already plugged
|
|
into the network on like the local land or whatever because they don't have any protection against
|
|
monitoring, which means I'll quote back a little bit port monitoring basically prevents
|
|
someone from just arbitrarily plugging into the network. So what that said, it's generally you
|
|
don't see it at all. If you do see it, it's usually not implemented correctly. What should happen
|
|
is you should have a certificate for each host and that certificate should be validated when they
|
|
connect to the network. What ends up happening is most of the time it's a MAC or test filtering thing
|
|
where all you have to do is pretty much plug the device in, you want to clone, listen to the packets
|
|
for it to call out home and say, hey, I'm just connected to the internet. Here's my MAC address,
|
|
you know, server give me an IP address and the server says, oh, that's you, this is the guy and
|
|
puts you on the network. Well, if you have physical access, you're just going to physically plug in
|
|
the device that's supposed to be there and emulate that device. Now there's some small things you
|
|
can do within, like I think deep packet inspection and some other stuff outside of basic security
|
|
and MAC address filtering that you can kind of fingerprint and match that fingerprint to a device.
|
|
But in general, you don't see that either. You're going to haven't seen it well implemented.
|
|
So generally you can take a just desk phone, for example, and say, hey, I'm a desk phone and end up
|
|
on the network through MAC address filtering. So anyways, long story short, the idea is that you can,
|
|
you know, just plug in any device into the network and then you're good to go and you set up that
|
|
as a listening server to listen out for what they call beacons. So you set up a beacon and it could
|
|
be anything. It could be a piece of programmers snippet of one programming language or whatever,
|
|
and that that thing phones home and establishes a command and control CNC server or whatever.
|
|
Anyways, I'm going along with a way of kind of explaining how basic, you know, remote stuff works.
|
|
Anyways, this particular lady had gotten up from her desk to go to this kickoff meeting,
|
|
and while she was doing that, of course, I said, well, she's a good person to any.
|
|
Could have been anybody, could have been somebody else I walked by, their office with their screen,
|
|
but they didn't lock their screen. And a lot of the screen title idols are somewhere around 60 seconds.
|
|
And some of my payloads actually bypassed that by just keeping the system idle. So if I do
|
|
pop a shell on a box, they actually have to lock their physical workstation. It won't just unlock
|
|
automatically. It'll stay open. So even if I want to come back later, that little script runs
|
|
on the background to keep the server, the workstation live and presses the F 22 button every 59 seconds
|
|
to make sure that the system stays on. So even if they do go to the bathroom and think that they're
|
|
systems going to be locked in 60 seconds, it's not going to be looking to get back on there.
|
|
If I need a reestablished persistent or run some of their something as an escalated user,
|
|
and I don't have the rights, the correct rights. So anyway, she gets up, walks off, I drop my payload,
|
|
I get my shell. So before we even have a kickoff meeting, I've already got a shell on the box,
|
|
which is not generally, you know, it's kind of necessarily unfair. But with that said,
|
|
you know, someone like, it's not like she was going to walk her workstation because I was there
|
|
anyways, because she knew I was there. So anyways, before we even start testing, essentially,
|
|
I've got a shell via physical access, of course. With that, it's kind of funny. The other part is
|
|
I brought block set and I had been a little bit into lock sport just from a security standpoint,
|
|
identifying weak points in different engagements and saying, hey, you know, you have, I see a lot of
|
|
double doors that are for whatever reason, not secured. A lot of times it's multi-tenant
|
|
environments where they've leased out that area to a person. So they'll, a person or a group
|
|
of company. But you see it a lot more within institutions that have a multi-tenant environment.
|
|
And you also see it a lot more with like a double doors. So there'll be external doors, you know,
|
|
secure whatever if they got RFID they can't get in. But after that, you'll see a lot of times
|
|
you'll have big gaps in the doors where you can just almost take a finger in the door and unlock it.
|
|
In some cases, you know, you can do some other shenanigans to get the door door open. But a lot of
|
|
times the, you'll see these super loose doors where you can just shove something in the door,
|
|
credit card or piece of metal or whatever and then pop it in. So I had, I had looked around,
|
|
walked around a little bit and found kind of a maintenance closet or maintenance area.
|
|
And this place didn't have much in there, but it was a nice quiet place for us to do when
|
|
you kind of shenanigans if we wanted to do something that we didn't want anybody to physically
|
|
see us doing. But other than that, there wasn't anything of value in there. It's all a brief case and
|
|
it's a little like leather style briefcase and opened it up in there. It was a USB stick in there.
|
|
I said, oh, there might be something interesting on here. Of course, popped it in and there wasn't
|
|
anything interesting. I mean, I wouldn't have been surprised. Had there be something pretty cool
|
|
on there, but there wasn't. It was like maps to the to the building or something, which some
|
|
people would find sensitive. But generally speaking, like, you know, this isn't like the movies where
|
|
they download maps from the building and use that to like crawl in through the gutters or what do
|
|
you call it? The ventilation system from like an order reporter or whatever. It was a bond. Anyways,
|
|
so there's nothing, nothing, not much there. And meanwhile, the guy I'm with who's pretty green
|
|
smart kid. He seemed pretty shy at first, but eventually he kind of started opening up and he
|
|
was kind of freaking out and being like, oh, yeah, but you know, we're doing this thing. We're
|
|
doing that thing. And it's like, this is your job. You'll learn to get used to it. And it'll be
|
|
comfortable after a while. Just relax. Pretend like you belong there. Put yourself in their shoes
|
|
and just pretend that you're supposed to be there. That kind of helps. So we're doing some initial
|
|
testing and we've gotten some credentials at some point for a couple of credentials for something.
|
|
And we're using those credentials. So when you probably talked about this before, but if you
|
|
have access to a Windows box, back then a little bit less nowadays, you would be able to dump the
|
|
hashes. And being able to dump those hashes, you can take those hashes and pass them around to
|
|
other places without having the actual password. So when computers negotiate SMB V1 days,
|
|
which they're still SMB V1 everywhere, when you authenticate to another computer and Windows,
|
|
if you have that hash, you don't necessarily need the password to access that system. So if you're
|
|
able to dump the hashes of that system, you can potentially, in most cases, use those hashes,
|
|
especially if they're the same local administrator password. You can use those hashes somewhere else.
|
|
So there's a thing within Windows called laps LAPS local administrator password service.
|
|
And that will kind of help with that stuff. It'll rotate out the local admin password based on
|
|
some magic. And it will keep you from having everybody having the same local admin password.
|
|
So anyways, when you don't see laps, you know that you can do a thing called password spraying.
|
|
So traditionally, if I were to try to log in 10,000 times with your account,
|
|
it's going to lock it out after the first three, six attempts, whatever. With password spraying,
|
|
you're essentially taking one password and using that against thousands of accounts. So the idea
|
|
is you won't be detected by simple password blocking mechanism. So if there's 50,000 accounts,
|
|
you try the password on all 50,000 accounts, and you try the next password on all 50,000 accounts,
|
|
you'll never get locked out because, you know, the timeout for those is between each password is
|
|
going to be so human for our between. It'll only show that you're trying my password every minute
|
|
or two minutes or whatever. So that's what you traditionally would do during these assessments.
|
|
When you don't have a lot of time, you just get credentials, you spray, and you pivot,
|
|
get credentials, you spray, and you pivot until you get local administrator. And then from that,
|
|
you want to get doming in minutes. So anyways, I'm using medicine. This is way back. And you can use
|
|
that to password spray a bunch of accounts at once. So he's relatively green to that piece of software.
|
|
And I'm kind of kind of have doing my thing. I'm kind of doing two things at once. And I'm kind
|
|
of trying to help him. So I'm kind of doing three things at once. I'm kind of keeping an eye on him,
|
|
seeing if he has any questions, trying to make do nine notes, and trying to do scans and performing
|
|
my testing all kind of at the same time, which in hindsight, that should be something that should
|
|
be done kind of one at a time. Whereas I do my work, and then I maybe pause for some brief moment,
|
|
and then shoulder serve him for a little while, and show him how to do certain things, and then
|
|
go from there. You kind of don't want to let someone just go willingly on corporate network.
|
|
And not shoulder served him at least the first few times to let them know, okay, here's what
|
|
you need to be aware of. Here's what you need to not do. Here's the five things that you shouldn't do
|
|
outside of just standard scoping limitations, but just for for lack of better term, just
|
|
etiquette within networks nowadays. So I have him set up this password spring tool,
|
|
and unfortunately I set it up incorrectly where it would do the opposite. It was kind of spray
|
|
those accounts with a bunch of passwords, and of course the wrong passwords. So not only was it
|
|
a bunch of accounts, it was a wrong password, which will trigger a logout. So what ended up
|
|
happening is I don't know how it happened. I think maybe I wasn't setting up the tool right or
|
|
something, and it went and locked out every single user within Active Directory. Now I'll link
|
|
a script that basically fixes all this for you in the show notes. Hopefully I still have it.
|
|
I may not have it, but it basically downloads the admin module for Windows automatically,
|
|
and then it will perform a check against Active Directory and say, okay, you know, with your credentials,
|
|
I'm going to try to unlock every single account out with one simple three or four line script
|
|
and power. So, you know, we're in the middle of this. We don't realize anything bad is happening,
|
|
and in the background, we're in a different room. Sometimes you're in a cubicle area where you can
|
|
literally hear things failing, and you start hearing about people complaining about being able to log in
|
|
or whatever, you know, it's happened a handful of times, but one of the times that it did happen
|
|
is I was around cubicles, and I could hear people literally talking about, you know, getting locked out
|
|
and things like that. So, it's not a fun thing happened because, you know, you're obviously
|
|
know you're impacting people in real world. So, anyways, some time goes by, and the main security
|
|
guy, our lead security guy on the client side, comes in and he proceeds to pop his head in and say,
|
|
you know, look, I don't know what you guys are doing, you know, but all our accounts are locked out,
|
|
and of course I tell him to stop immediately, and he seems kind of perplexed and is confused as to,
|
|
you know, why could this have happened, why could a single person essentially halt our entire
|
|
company because, you know, getting locked out wouldn't necessarily think of play as a denial of
|
|
service, but essentially that's what it is availability, you're attacking the availability of a
|
|
platform, and that is authentication. So, if a particular user were to be really mean,
|
|
they would get a list of all your external login names. Now, that's why a lot of companies,
|
|
their email addresses are different than their login because what happens and can happen is that
|
|
if somebody wants to do a denial of service against your company, they can basically
|
|
brute force every single user name with a bunch of passwords and block everyone's account out
|
|
at the entire company if they have a company username list or an email list that's tied to that,
|
|
that username. So, a lot of times within bigger enterprises you'll have your email address and your
|
|
username will be different than your email address on purpose because people who used to use their
|
|
email address as their username or, you know, at whatever.com, everything before that, and we started
|
|
having instances where availability was impacted because some clown would get a dump of all the
|
|
user names at your company and then they would proceed to, you know, and try to pack into something
|
|
and lock everybody's account out or lock a large swath of accounts out. So, that said, you know,
|
|
he comes in, like, I was locking everything out. I kind of backtrack and, you know, I take full
|
|
responsibility for anything like that and I say, you know, he's green. I kind of told him what to do.
|
|
It's all on me, you know, don't worry. I know, you know, this is one that made a mistake. I wasn't
|
|
making sure that, you know, we were doing the right things and he took a very well, you know,
|
|
he said, well, this is actually a good finding because, you know, if one user can lock out all
|
|
of our accounts and essentially stop the business, then that means that we should probably look at
|
|
fixing that. And at some point in time, I think this was before the massive amount of unlocking,
|
|
locking out accounts. We had, or I had had a session with a specific computer and I told the
|
|
security guy, I said, you know, I know you use, I don't know if they were using something
|
|
along the lines with snort or whatever one of those fire watch or fire or something or other or
|
|
one of those network based deals. Anyways, it looks at network traffic and maybe it has an
|
|
endpoint piece on it, but I don't think this had an endpoint. It was a network tool that would tell
|
|
you, you know, if there's any shells going on, things like that. I actually think it was maybe
|
|
carbon black or or something like that where it actually had endpoint visibility. You could see
|
|
what programs were running. So I told him to bring his tool up and say, you know, hey,
|
|
here's your kind of, I guess it was only an EDR, but it was a endpoint visibility security
|
|
tool. So hey, bring up your, your security thing and here's the host name and tell me make sure
|
|
that we can't, that you can't see my shell. And he says, he's a can't. Oh, yes, make sure that
|
|
you can't see my shell. I want to make sure that my shell is hidden from this security tool. And
|
|
of course, you know, it was plain Jane, you know, regular, medispoint reverse payload thing. So,
|
|
you know, he brings up the host name, looks at the thing, looks at the tree view and like,
|
|
no, I don't see anything out of the ordinary here. I'm like, oh, hey, good. Well, you know, that's
|
|
one of the findings I can take ahead and say, you know, you guys, you know, need to be aware of that
|
|
just because you think you have visibility into something and there's some missing pieces there.
|
|
But this was kind of way before EDR and injecting process injection and all that stuff was being
|
|
tracked and monitored. So you just ended up with like, no pad. And it's like, okay, they're running
|
|
no pad, but why did no pad all of a sudden spawn, you know, a command shell. So there wasn't that,
|
|
there wasn't that visibility into kind of pivoting aspects type of thing. So we ended up getting
|
|
from there. It was, you know, local admin credentials. I'm sure that we use somewhere else.
|
|
Usually it's a service account for monitoring of all things. So a lot of servers, Windows servers,
|
|
especially will have some kind of monitoring access aspect of it, a CCM, whatever. And what can
|
|
happen sometimes is these systems can be taken over. Those local credentials can be used to, for
|
|
whatever reason, those local, our local credentials are cached or they're the same on every system.
|
|
And then you can pivot to other systems. So you just pivot dump credentials, pivot dump
|
|
credentials. And then eventually you find domain administrator or an account that has access to
|
|
the domain admin computer. And then you can pivot from there and create your own domain admin.
|
|
I will say if you do have domain AD, there's a bunch of basic simple stuff that will help slow
|
|
that process down. And I don't remember the website, but it was like 80security.org. It's like
|
|
one guy. And he's like the only handful of guys that actually, you know, understands AD from
|
|
a security standpoint. I want to say it's not 80security.org. It's some other, so I think it's
|
|
pretty much some other guy. Anyways, it's like active directory, something or other guy. And
|
|
anyways, there's some guides in there that will help slow down these types of attacks. So if
|
|
somebody does get access to a domain administrator, they can't just arbitrarily create a domain admin
|
|
account. They actually have to have credentials to the domain add domain controller. Then they have
|
|
to pivot to that domain controller. And then they can add credential to that account. So if they can't
|
|
get to the domain controller because of firewalling or whatever, then they have a domain admin
|
|
account, but they can't create their own domain admin account because that user is not, you know,
|
|
set up to be able to create account from without having been on the actual domain domain server,
|
|
whatever. Anyways, there's a bit of a tangent, but there's there's a lot of active directory
|
|
security guides out there. There's a million things you can do so much with just group policy
|
|
objects and app white listing within Windows. And people don't really realize that if you really
|
|
understand AD, you don't really need a whole lot of tools. If you understand group policy objects
|
|
and security around all of them, you can create basic stuff like word pad and Microsoft Word
|
|
shouldn't be dropping binaries or executing executables. Like that's just not something that
|
|
is supposed to happen. So like if, you know, when Word or Excel, all of a sudden runs an executable,
|
|
that's not something you want. And you can turn that on within sight of Word and Microsoft
|
|
products to say, okay, just basic stuff. And within AD, AD security and group policy objects,
|
|
there's so many things you can turn on that will not impact business that will help with that space.
|
|
Anything's. I'll see if I can remember to try to find the link and put it in the show notes for
|
|
that. Let's see what else we got here. Other than that, I was on my way out the door. And generally
|
|
the last day, I'll try to clean up my tracks and make sure that whatever I left behind, I cleaned
|
|
up after. So I'm not leaving like shells and users and accounts all over the place. So I'll usually
|
|
have like a little note that I'll print out or usually just write as best I can because my handwriting
|
|
is terrible. I would write, you know, here's the domain admin account proving that I, you know, got
|
|
domain admin, blah, blah, blah. If you want to remove it on my way out the door, feel free. You know,
|
|
we have our screenshots and all that stuff. So as, as I'm kind of at the door, I hear a guy talking
|
|
about Plex, which back then Plex was still pretty, pretty new. It's a kind of build your own Tivo.
|
|
If you remember Tivo days, it's essentially like build your own streaming media service and you can
|
|
share between box to box. So if I have a server, you have a server, we can share each other server
|
|
and see each other's content and all that. So when I log in, I can see all the people that I've shared
|
|
my server with. So anyways, as I'm passing by, you're, you're, I mentioned Plex and I kind of peak my
|
|
head over and I say, oh, here's my email address. If you want to whatever and still to this day, I mean,
|
|
this is, I don't know, 15 years later, 10 years later, I have an account still with his Plex account.
|
|
He doesn't have a ton of stuff on there, you know, I'll look in there and run it around, see if
|
|
anything interesting. But it's kind of a good, interesting story. It's kind of, kind of, I want
|
|
the highway out and establish a relationship sort of that I'd still utilize to this day.
|
|
Anyways, that's pretty much it. The only other thing is I say that was free, free of this
|
|
soft drink that was free, but a lot of them had caffeine in them. And I eventually found one
|
|
that I thought didn't have caffeine in it. So I'm sitting here drinking a drink in it and I realized
|
|
I've drive had like three cans of it that it's not just a, it's not just a cocoa or coffee drink
|
|
or whatever. It's like not caffeinated or whatever it had like caffeine inside of it too. Anyway,
|
|
so I ended up making things almost as bad as drinking a bunch of sodas. That's pretty much it
|
|
for this one. And hopefully we'll have more coming down the pipe. I've got plenty of these that
|
|
are more recent, but I'm trying to get the old ones out of the way so that I can, you know,
|
|
so they don't start leaving my brain. Anyways, have a good one, dig it easy.
|
|
You've been listening to Hecker Public Radio at HeckerPublicRadio.org. Today's show was
|
|
contributed by an HBR listener like yourself. If you ever thought of recording a podcast,
|
|
then click on our contribute link to find out how easy it really is. Hosting for HBR is kindly
|
|
provided by an honesthost.com, the internet archive and our sync.net. Unless otherwise stated,
|
|
today's show is released under a creative comments,
|
|
attribution, share-like, slid-as-o-licence.
|