Video summary
In this episode of the series integrating cybersecurity into Minecraft, the creator attempts to build a mod that utilizes the Hunt.io API to explore open directories on the internet directly within the game environment. The session begins with significant hurdles, as the team struggles to get the API keys properly configured without exposing them in code or logs, eventually succeeding through coordination between different agents and devices. A major technical challenge involves bridging the gap between the creator's Windows-based Minecraft host and a remote Linux server running advanced AI tools, requiring complex SSH connections and environment variable management to ensure secure communication between the game console and external security data sources.
The development process focuses on refining the command-line interface within the Minecraft console to display real-time threat intelligence, such as hostnames, IP addresses, port numbers, and file listings associated with open directories. While initial attempts result in chaotic outputs where data is rendered as unsightly blocks or fails to load file metadata correctly, the team iterates through various prompts and architectural adjustments to improve usability. The goal is to create an intuitive system where players can simply query for recent attack captures and drill down into specific hosts to view infrastructure details like country location and provider information, transforming raw API data into a navigable and informative in-game experience.
Despite achieving functional connectivity where the mod successfully retrieves file lists and displays host metadata, the final output format remains imperfect, often requiring manual intervention or resulting in errors when attempting to list specific files. The creator acknowledges that while the core capability of fetching genuine security data is proven, the user interface needs further refinement to be truly effective for educational purposes. The video concludes with a demonstration that the mod can indeed visualize cyber threats like dirty pipe exploits and file structures, setting the stage for future improvements that will likely involve more sophisticated world generation based on the discovered vulnerabilities and malware samples.
Read the full video transcript
Can AI create a Minecraft mod to explore
open directories on the internet? This
is part two of a recent video series
where we gify cyber security inside of
Minecraft. In the last video, we got a
sandbox world created and we got our mod
talking to the hunt.io API. But there
was a problem. I still don't know how to
play Minecraft. So, my live stream chat
is helping me out. Let me show you the
shenanigans. We do not have much
progress whatsoever. We are trying to
now get our hunt io capability uh in the
environment and like in the game within
Minecraft. That's all. We have not even
done anything beyond getting into a
super flat world. [laughter]
We've been live for two and a half
hours. We've accomplished virtually
nothing. But that's fine. That's how it
goes. Look at all the pig Look at all
the pigs. Look at all the pigs that we
have here.
I gonna throw.
All right. He died. He died. I killed
him. The vault is still cooking. And I'm
really hopeful that it can SSH into this
device that I'm on right now. Okay. Omen
said he did something. Did you get it
done?
What did you see? Creator SSH works.
Yes. The MC modding live stream mod
fabric 26.2 lab copied the hunt.io IO
keys from our pass to now the user level
entry environment variable hunt io API
key without printing it or writing into
the repo. Dope. Also updated the rundev
client. So it will pull the user
environment variable into the devclient
process before launching Gradel and that
seemed to build successfully. So now we
should get that working. This is cool.
Thank you robots coordinating with each
other. Um now let's go see talk to local
codecs. Hey, I set up our hunt io API
key that should now be in the
environment variables. Are you now able
to actually see what we have
connectivity to? Can you build out the
hunt io commands for the actual
Minecraft console so that we could like
list a lot of the open directories that
it's aware of very recently? Can you
have it browse or list or fill out now
some of the IPs and port numbers and
things that it has here to just like
list the files, the file names, the file
size, etc.
That would be at least just a kind of
fine small smart working client
capability like a CLI representative of
using the Hunt.io APIs within Minecraft
like within the console of the game. I
believe you should now be able to
actually test and validate all this
because you now have the API key
available to you. Again, it should not
be displayed, but now we can harness
that capability. So, let's see if you
could get something now in action,
please. Aha, it found it. Okay, good.
So, it is aware of the API key.
And now we're adding a little bit more
tooling and capability. Minecraft, you
exist. Now, we have Hunt.io.
And I hate the fact that it always needs
um specific things. I don't know if this
is going to show my uh API key or not.
So, let me momentarily hide the
Minecraft status page. Nope, it's not.
Okay, cool. It says API key configured.
Sweet. So now we have huntio
and
recent.
Thanks. Thanks for that. You immediately
fail. We have a hunt.io command line on
the other device that I normally use for
AI research stuff. I know browse needs a
website as an argument, but we needed
that to be I wanted that to be the smart
thing that was able to actually figure
out what listings are coming from the
Hunt.io API. I don't want to have to
know the IP addresses or the websites or
the port numbers. Like obviously that's
not very helpful for the game
environment kind of thing. I feel like
we need a little bit more of our hunt.io
understanding here. Let me get back to
vault. All right. So now we're talking
to robot codeex on the remote host. Hey
Codex, thanks. Great work. Looks like
you were able to get the hunt.io API key
onto the creator device. But we are in a
new endeavor because I think you on this
computer in this Omen device have a much
further along understanding of all the
things that we can do with hunt.io. I
know that you have already crafted some
tooling and local command line
capabilities for our usage of hunt.io
know based off of the documentation and
all the things that the API can provide
and the ways that we're able to list out
and uncover and now see the attack
capture listings of open directories
given like the metadata of host name, IP
address, port number, where it's being
hosted, where it's being served. You can
see the country, you can see the
infrastructure, all the things that the
Huntio API will give us. And the same
thing for when we can specify or list in
to see the amount of files for a
specific host. You have already done all
that work in the documentation. You
being Omen codeex uh not the creator
host that we've been working on within
the live stream. But I think we need to
now build that in create the essential
command within Minecraft on the creator
device. So, I think what I need you to
do is basically SSH in, kind of get an
understanding of like what is actually
in the Minecraft mod as it exists
locally on the creator. Baseline it to
be able to determine the deltas of what
we actually need based off of what
you've already created here on this host
and the Hunt.io API documentation and
their online instructions and their
tutorials and their knowledge and their
information and everything that we've
already learned there. And then can you
either prepare or provision the
documentation prompts or files or skills
or runbooks and everything inside of the
creator device, the host that I'm
currently on, and then give me a prompt
for me to kick that right back into the
creator agent. And then I think that's
okay for now. Just tie this together so
our hunt.io capability within Minecraft
can be much more natural, much more
real, much more expressive to actually
getting open directory host names and
port numbers. Please. Uh, have you
thought about the architecture of this
thing if it were opened up to
multiplayer? I'm seeing this a lot of
PowerShell. Would you host it on a
Windows server? Ooh, Pimp and Easy is
asking good questions. So, the host that
I'm using actively, right, is my creator
host name. Like the host name is
creator, right? And that runs Windows.
But the Omen device that I use as like
my AI powerhouse in the AI dedicated
open sandbox world is win is Linux. Is
Linux. So fingers crossed like I'm
pivoting into that right now and you can
see much more like Linux file systems
rather than Windows. All right, you got
something. You got something. You got
something. You got something. What do
you got? What do you got? What do you
got? Done. I provisioned the creator
side handoff runbook and prompt inside
the live stream project with no secrets
written or printed. Dope. You have now
gotten some of this. The key delta I
captured. The current mod already has
/hunt.io, but it's generic JSON to label
rendering from attack capture browser.
The next patch should become home host
first. should render open directory host
cards with IP port puncher provider.
Yeah. Yeah. Yeah. Yeah. Yeah. Yeah.
Okay.
It's going to try and upgrade it. And
this it just gave me like this to be
able to copy paste back and forth. So
easy enough. So let's just now kick that
right back to this device, the one that
I'm actively using the desktop to be
able to play Minecraft on. And let's
just give it all that. And I think that
it would be good. I feel like half split
brain.
>> [laughter]
>> because Hunt io is the important part to
make the security aspect of this kind of
fun and interesting and cool. I've done
that on the remote server
to make a command line utility ctl
controller device to be able to dump and
give me the same uh here let me get to
the stream machine the same output that
we're seeing from hunt.io's IO's like
actual website to be able to drill down
into interrogate and investigate a host
and a port and a file. It's now pooping
that into Minecraft. That is like what
we're trying to need to stitch together.
So, I am having the discontinuity
between my creator Windows host that
runs Minecraft and is making the mod
versus my remote AI operating system and
ecosystem that does already have the
Hunt CLI genuine command line tool and
documentation and everything and
everything. So I know we are yeah like
hobbling along trying to get these two
together but like this is probably the
most important shoe that we need to drop
is getting and being able to have these
things be returned back here. But first
we need to get the API key baked into
the mod in the like at least smart
enough way. my desktop
like the Windows computer that I
actively sit behind and use. I just call
that the creator is the host name and
Omen is literally an HP Omen device
that's sitting in the corner running
Linux. Creator is running Windows, Omen
is running Linux. And when I usually use
codecs, like how I'm interacting with
this app right here, and you can't see a
damn thing on my screen, I'm so sorry.
Um, that is usually me connecting and
remoting to the omen. This is the
inconvenience where okay, I need the m
the Minecraft mod actually happened on
the computer I'm actually using is
running Windows.
So, because they're in a local network,
they're just sshing back and forth into
each other. They're just communicating
agents and robots talking to each other.
I like to do that for like hey a sort of
amount of device fabric like a local
tail scale environment so that that way
yeah I can hit my creator my laptop my
omen my GPD my whatever device we want
for a local home local network okay
implemented the next hunt IO slice now
we have status clear recent search host
and URL I feel like that's not what I
want [laughter]
I didn't do a good enough job prompting
this because I'm goofing off with you
all. I feel like we really need to
reapproach our hunt io command. I need
you to look up the documentation for
real this time on hunt.io and
specifically the like attack capture
listings because that is what gives us
our open directory listing. I want you
to be able to present to me like by
default
the most current most recent listing of
uh what Hunt.io is seeing and then I
want to be able to get those hosts in
their listing and then I want to be able
to specify or drill down on one of those
hosts and their port and be able to see
their file listing. I feel like we just
need a easier command line interface
that doesn't require me to have to know
a URL or know a query. We should have it
be able to essentially present it all to
me with genuine data right away. Could
you make this a little bit more
intuitive for our own experimentation
and learning, please? Chat member
Laura's 4350 said, "Tell it to only use
Hunt.io as a source of truth for Hunt.io
stuff nowhere else on the web. How
should a player drill into one of the
honio resos without using
by index is good or host URL? That's
that's cool. Did we have them in plan
mode? Why is he asking questions like
this? Let's start with 10. Okay.
Implemented the hunt.io only CLI rework.
The hunt.io now centers on the official
the official legacy. What legacy?
Okay.
Will we see this work in game now?
Start the mod so I can see it work.
Hello
world
hunt.io.
OH MY GOD. WHAT IS HAPPENING? [laughter]
What did you make? What the What did you
make?
What is this? [laughter]
Okay.
Holy.
It just like crapped them out. This is
kind of slick, though.
So, this was our Digital Ocean fellow,
right? Right. Right. Hey, this is him.
This is 13412.
It looks horrendous like this. I kind of
would have expected it to like output in
the chat, but that's fine. Game of the
year. Game of the year edition. Uh so
he's uh hunt ID number 12, right? So
let's go make no advancement please.
Huntio,
what is the recent do?
And that will will that crap them out
again or does that just make them? Oh,
you're loing loading the recent for one
day. Oh, this one has why so serial. We
should look at him.
I don't think it got anything from the
recent load that Oh, no. It did earlier.
So, it's probably just not adding them
in.
Okay. So, hunt.io host. What should we
go look at? 12 was our digital ocean
guy, right?
Yeah. Yeah. He's loading the host and
the uh host is not returning anything.
Hello. What is happening with the host?
Holy crap. Holy crap. Stats. Where's
stats?
Oh,
why did you only keep 12? This is so
bad. This is so bad.
Good job, attempt, but
not. All right, Codeex. I think we're
going to have to make some real changes
for our Hunt.io command line capability.
I know that we did have commands. It
looked like you've done a very strange
thing with our hunt io command. I did
run it and it did render those as
genuine blocks. I don't know why you did
them with blocks. I probably honestly
would have expected them to be like text
output displayed in the console so that
I could realistically see them and not
have them in game quite yet. I feel like
we first need the data to be displayed
in the like console of Minecraft in the
terminal. I also didn't see any success
from some of the commands. I saw some of
them give me an error like the stats. I
wasn't able to drill down into a host to
be able to see the file names that are
listed. I would have really genuinely
expected you to be able to make that
into kind of a command line equivalent
within the console and within the
commands of Minecraft. Not yet making
blocks. I think we should try that
again. Could you make a better plan
here? Let's get into plan mode and
genuinely just make this essentially
like a command line CLI capability for
the console to be able to render these
things out. And I would have expected
them to be much stronger, much faster,
much better. Like being able to load a
host should have been able to just
display the files right away. Can you
please uh make this a lot better? Yeah,
make it into the chat, please.
I really like the ideation though that's
going on in chat because you guys are
thinking like, oh, could we click an IP
address? I almost imagine that there
would be portals that are laid out like
a portal to the end or to the Nether
that you move into and that will bring
you into like the cave or the world that
has the open directory and can navigate
and control around files. Restart the
mod so that I can see and interact with
this now please. Okay, so
we have Hunt.io.
That looks atrocious but it does work.
12 hosts cached and then use hunt one to
be able to see it. So this one saw
let me go for 12 because this was our
digital ocean guy. Hunt io host 12.
Why are you not getting that?
You have more files than that.
Does stats now work?
Oh, it does. Cool. We can see the dirty
pipe exploits.
Okay, so it is genuinely making
some really good calls to the API now.
Status still works well. We are
configured.
I feel like we should get files from
number one, but it's not getting any
files. Am I not using this the way that
it thought I would have? You should be
able to try host one files 20. Oh. Oh,
do I need to specify like how many files
I want to get from it? Hunt.io host 12.
That will tell me that I don't have
anything. But huntio files 12 and then
how many I want. Let's get the first 10.
That's not doing anything.
That's literally not listening. I think
you could try the new dialogue feature.
It could create custom buttons that run
commands or show a simple guey. Oo,
I was really curious about that. Is that
a thing that exists? Because like we
obviously need things like genuine
buttons to a certain extent. I feel like
we need to actually get files listed
because we still are not getting any
files listed in the output. We're
reading the IP address. We see the host.
We see the port, but zero files, zero
size is not working. All right, CEX. I
feel like we're just inching closer, but
you still have not made this work well
at all. We can now list out hosts and
get the actual IP addresses and port
numbers, which works, but getting and
retrieving files to like drill down into
on a host is seemingly returning file
zero. and there's no genuine other
metadata of like the infrastructure
where it's hosted by or how that's
happening. You should be able to query
that from the API like that is again all
inside of the documentation and we
literally want the file listing. I
literally want to have the information
as to what is presented there. We need
the capability to get this into the game
and I just need to validate and prove
that it's working. So please do ensure
that you now have the successful output
when you were to try to run the hunt io
commands. I don't know what we need to
do to get you in a better like actual
iterative loop so that you can spin up
and start and try to use the code in the
chat and the commands and the console
requests itself because I think that's
probably the most important thing is
that we need to have a better end toend
gate and solutions so that you are
actually able to see test and validate
all of these things. Do we need to mod
make modifications to the mod so that
you can control the chat or that you can
run it or that you can inject it or
control externally to see and validate
that it's working? But we desperately
need uh some much better proven success
of all these commands and what we're
expecting from the true and genuine
hunt.io data that we seeing from the
API. So the API for this should return
for one thing the metadata of these
total files, subdirectories, total size
and the insight and then all of the
um output itself. I think we first
needed the proof of concepts to be able
to list these in the game so that we can
prove and validate that okay we can make
the API requests as we go through this
sort of thing. Um, and then we could
make it so that, okay, it would now make
changes to the world or craft and create
those worlds based off of maybe mobs
like chicken or pigs or horses. But of
course, we could eventually create our
own custom like something that looks
super sketchy for Python or something
that looks super sketchy for a certain
kind of malware like Vidar Stealer,
Redline Stealer, certain ransomware
variants. Like I feel like it's a super
cool creative canvas, but I feel like we
still need to plum together. What I'm
interested in is the attack capture API
because that's the name for open
directories. And if that's what we're
creating as the idea of a world in here,
what we do is that we reach API hunt.io
v1 attack capture and then some of the
listing here. Um, and we would of course
be passing in our actual token, but here
are a couple requests to kind of show
that capability. They do default, which
is good, but we could kind of configure
what we wanted to specify here. But see,
like this is what I would have expected.
And it doesn't need to be pure. I think
he's controlling it now, which is good.
That was what I wanted. Okay, we're
seeing files. We're seeing files. We're
seeing files. It sees files. Look at
that. Look at that.
Hunt.io host.
Oh, you're driving right now. I see
what's happening. Codex is is driving.
[laughter]
He's trying to control the game. It's
working. We finally have the data we
want, but not remotely in the format we
were hoping for. So, we're not done yet.
There is more work to be done. And we'll
continue in the next video making a
Minecraft mod for security research.
Like, comment, and subscribe, and I'll
see you in the next one.