 Okay, here we are. I have if you're following this series I have been using a USB flash drive to run shell scripts on my new It's new to me 2016 Mazda 3 And I wrote a script that dumped a bunch of Information to a USB flash drive and so now we're going to have a quick look at what information I grabbed So I'm in the full of this my USB flash drive and the list out you can see I named each file Mazda dot Whatever information is in there. So let's go ahead and start off. I'll just cat out Mazda busy box. So this is the output of busy box which lists every application it built into that busy box And as you can see it's a fairly full copy of busy box ounce of 2016 Mazda 3 and as you can see this compilation of busy box is from 2015 so I was relatively new when the car was built which is great and you know Busy box if you're not familiar with it is a single binary file that contains a number of tools all your core tools And actually more than that And it's on pretty much every arm device you have your TV Probably has it even if it's not a smart TV like my Samsung which is an older Samsung TV and still has you know Some capabilities of playing videos off USB drive It has busy box on it your Android phone is either gonna have busy box or toy box toy box is kind of like a remake of busy box under a different license Busy box has been around longer and has more tools Although when you compile it you can decide what tools are in there and a lot of systems, especially if you have a router Busy box is most definitely gonna be on your router But it might be a slim down to save space I mean busy box in general is usually around one megabyte one and a half megabytes even when it's has all the tools in it But if you're on a system that only has 16 megabytes of space you want to you know save as much as possible But there's so many tools on here and it makes me so happy and again I mean I have access to this I can copy a new copy of busy box over there with any tools that I'm missing has many of the tools that I you know Obviously, it's got to have things like it's gonna have a shell. Usually it's the ash cell shell You're gonna have a awk and cat and grep wherever that is grep grep alphabetical order. There you go You know, it's got W get here at the end A lot of tools one of the things that's commonly Missing from busy box on lightweight systems. They will remove the HTT PD, which is a web server And that they have that in there, which is awesome They have chur route. So let me go back up to the seas here We have chur route which is awesome because that means that once I do pop a shell that I can interact with I can chur route into Debian which Would be awesome to have Debian running on my car just to say that I have Debian running on my car if nothing more You know, but you have all these tools. I mean pretty much everything you need two things that are normally in a full busy box install Actually, two and a half things that are not on here So if I was to rep this out just to double check Usually there's a telnet server and a telnet client and then there's not in here And usually there's an FTP server and FTP client and there's not now I don't care too much about the FTP server because I have a USB drive I can plug into and as you'll see in a moment There's also SSH in there. So the telnet really isn't necessary. But if I wanted to use a telnet like thing, you know There is netcat in there and so I could create a shell and Access that way if for some reason SSH wasn't on there. There's a telnet. I could use this to get his shell So let's go ahead and continue look at our files here. So as you saw a lot of core tools in there DF you can see here a quick sum of the size of the partitions that are used and how much of them are used The SDA one here is my flash drive, which was a two gig flash drive Just a cheap little flash drive But you can see that there's some devices here and there's there's over four gigs worth of Storage built into the head unit already But again, there's an SD card slot and two USB ports so I can add whatever storage I want to it What I did find interesting so normally you'll find, you know block devices like these on Embedded devices arm device like this. I've never really seen a partition or a drive named something like this. It's it's a FFX it's like it's a hex code, but that's interesting That's that's the the root first partition on that it seems to be the root directory the root file system Which is interesting. We also have here, you know a data partition and also a data persistence Which I'm curious what's in that and we'll look in a moment What's in there, but let's keep on going down the line will cat Mazda 3. Oh and help dialogue. Okay, so we'll put that out so the system the interface on the the console in my car is Created by a company called Johnson controls and there's a lot of tools. I have seen on this Called JCI which I assume is Johnson control interface and one of the things when I was running the script if you watch the previous videos I had dialogues pop up and that was using this JCI dialogue and I dumped out the help Screen for that so you can see the options on here now if you're not familiar There's a lot of tools on Standard Linux installs or systems that you can install Such as zennedy is a popular one or x dialogue and there's one or two others that allow you to create simple dialogue boxes And that's exactly what this is for for the cars You can create an info box a warning box an error box a question box or a confirmation box or a box remote A lot of those will have an okay button or Cancel button or both you can also do a box with three options so these are the types of Dialog box you put out and all they really do is change the look of the box And to give you an example as I mentioned zennedy. Let me go back here through my history zennedy so zennedy Basically so on my local machine here zennedy I say that it's an info box and I give it the text and this is the text that I'm going to give it if I hit enter It creates a little information box. You can see has a little, you know Glass light bulb there and the text that I put in running the same command But instead of info if I do question you can see that it changed look of it says question It gives you a little question mark there and get yes or no rather than just okay and then you can also do An error box So again, it's the same command It just changed the look of the box and the way the buttons are set up And that's basically what this does and it's built into the car already which is awesome So you choose what type of box you want You choose a title string that shows up at the top of the box the text in the box And then the label the buttons so you have an okay button and a cancel button But you can decide instead of just saying okay or cancel you can tell it to say Something else and of course if you have a three-button dialogue you can tell what the third button is to And of course you can add grab the exit code of the command and be zero one or two or three I would is so sorry zero one or two Depending on what button you click and of course so you know what buttons click so you can continue in your script Accordingly hope that makes sense I mean if you've played around with one of these dialogue boxes such as entity or x dialogue or even dialogue in the shell That should make sense to you. If not, it's not important right now Let's cat out Mazda DU so this is I just dumped out Basically here just to see I was trying to see how many gigs were being used But we already looked at some of that information there now. Here's a big file Mazda 3. Fs. This is just a list of all the files on the system So I can quickly grew up through that and I can say true which I already saw was in busy box But you can see right here. It's in the s-bin folder as well that the usr Unix system resource file s-bin true which is probably I didn't output You know details of this, but it's probably linked to busy box, but again because this is there I Should be able to get Debbie and running on my car, which is awesome other things We can look for ssh. You can see that there's a ssh configs and keys And you can see that there's a server and client and the key generator So ssh is definitely an option on here once I get the Wi-Fi working which the if we go next we can go to IP here And you can see that there is a Wi-Fi device I still need to get that working, but it is there isn't to get up and running and actually if I Run through the file system again and grep Wi-Fi you will see That if I go up a little bit here Again in the JCI, which is the Johnson control interface there are some scripts such as start Wi-Fi or JCI Wi-Fi API Or there's also scripts the same name in another folder. I'm assuming they might just be separate copies of it And then there's a WPA Wi-Fi So there's a lot of and then I'm going to put down here a bunch of drivers modules for the system for Wi-Fi is what those look like there to me. So So yeah, there is Wi-Fi and there are scripts I need to pull those scripts and look at them a little bit play around with them see how they're supposed to load instead of Try and do my own thing first. I want to see what those scripts are doing So next We will do the kernel information as you can see here It is It was built in 2015 again. It's 2016 car. So that makes sense. It's a obviously a Linux kernel and Linux 3.0 point three five So, you know pretty new for the time if I remember correctly thinking back and then you can see here It's an arm version 7 which is awesome because again I do plan on trying to get Debbie and running on the system which should be easy to do once I pop a shell But I need to make sure I have a compilation of Linux For the proper processor, of course, Debbie and has builds for many different processor types arm It has a few different arm arm six and of course arm seven and I have videos that I've done in the past on creating Arm file systems for devices like this for doing true route in different ways you either using a virtual machine to To create an image or using the bootstrap To to generate to pull down from the internet the arm file system But at the same time pretty sure arm version 7 is I could be wrong what Raspberry pies use and if so that was saving hassle because I have a couple of raspberry pies I should be able to just pull out one of those SD cards pop it in my car and churn route right into that You know that partition instead of creating my own, you know Thing Sure that again, I have to make sure it's arm seven, but I'm pretty sure that will work And if not again, I know how to create my own file systems like that So again, let's move on Mazda partitions And this is just we've already looked at the partition information. It's a little more You know just a more detailed look at the different partitions, but nothing really there too interesting again This is fat 32 is my SD or not my SD card my USB flash drive that we're reading stuff off of right now I can count the password file Which has the password hashes in it? I'm not too worried about someone breaking into my car again He's probably the same on everyone and then of course I also have a file called user which we already know that the script was running as route so Pretty cool live information on there. You know the most Useful thing in here is I think the file system just the list of all the files I can go through here I can grep through here and just get an idea of what programs are already on there like top oh sorry Grep top a lot files called top you can see there is a top island a top. I'm not sure what a top is What about h top there h top nope no h top? So yeah Learning more and more about this system. I've yet to to get a shell that I can type at I Have a USB flash drive that can run scripts off of but I need an interactive shell to really get into depth But as we can see SSH on there there is a Wi-Fi and I've run online that you can also get adb Running on it and then SSH in through that which if you have adb I don't know why you wouldn't just use the shell but going in through USB rather than Wi-Fi But if it has Wi-Fi that makes it even simpler I can connect to it from my phone or have it connect to my network and connect to it through my desktop Anyway, I hope you are enjoying these videos on hacking the Mazda 3 interface I'm Very excited about this and I hope that you keep on watching as I learn more and I hope you visit films by chris.com. That's Chris of the K. There's a link in the description of this video There you can search through all my videos from this channel and my second channel and as always I hope that you have a great day