ElectronicCats / CatSniffer

CatSniffer is an original multiprotocol and multiband board for sniffing, communicating, and attacking IoT (Internet of Things) devices using the latest radio IoT protocols. It is a highly portable USB stick that integrates TI CC1352, Semtech SX1262, and an RP2040 for V3 or a Microchip SAMD21E17 for V2
https://github.com/ElectronicCats/CatSniffer
Other
500 stars 67 forks source link

Software support for Linux #50

Closed lukeswitz closed 8 months ago

lukeswitz commented 9 months ago

We apologize for any inconvenience you've faced while trying to use our devices on Linux. We truly value your feedback and understand the importance of having a seamless experience across different operating systems, especially in field applications.

No need to apologize. The product is great, but its capabilities are limited behind the TI & Windows hobbyist environment requiring deprecated versions. Serial output should be standard, so at the least we can see what the sniffer sees as referenced in the workshop BLE spoof/sniff modules.

Sniffle is a mess to compile, then doesn’t seem to work. And your docs tell us if we want to use pre-compiled builds the only way is with Uniflash which doesn’t work on most Linux distributions.

I’ve gotten it to show airtags, but disheartening was the fact that an app on my phone did the same and found an equal amount.

Is a new plugin/script for wireshark possible to solve this? Has anyone found anything that works with this device?

Lastly, does the device need the serial pass though flashed to see the output of the AirTag fw from the CC chip? Any help appreciated. Thanks all.

wero1414 commented 9 months ago

Hello!

Thanks for the feedback, we are still working on improving the documentation with all the updates we have been working.

In the mean time, i would like you to know that the pre-compiled version of sniffle is already available in the repository, so you can use it with the sniffle software, and you can flash the catsniffer with the python tool on any OS.

May i know what catsniffer version do you own? cause that will determine what wireshark version can you use, we have been working on reverse the serial commands that the TI sniffer gives us but it is still a WIP you can find that software here we are missing the wireshark plugin connection and dissectors.

and for the finall question, yes you need to have the serialpasstrough to see the output, we are trying to normalize all the usage of the CC1352 serial port with the 921600 bauds speed, so you can always see the messages and avoid the change on speed on the RP2040 or SAMD21 uC.

I hope i clear things a little bit, if not the support team will lead you with each question you may now have.

alphafox02 commented 9 months ago

I've got one back in hand now and working on getting whatever is needed in DragonOS (Linux) working with it. If I read above correctly though, the dissectors are not yet available for wireshark?

Marcelol52 commented 9 months ago

Hi,

No these are not currently compatible with Linux.

cldrn commented 9 months ago

@Marcelol52 The dissectors are universal, they work with any OS.

Marcelol52 commented 9 months ago

Thanks for the correction Paulino. Sorry for not specifying, I meant wireshark. I didn't see any download for Linux on their page.

alphafox02 commented 9 months ago

Further clarification, with the CatSniffer v3.1, what can one use it with in Linux? If I receive the CatSniffer from the factory and leave the default firmware on it as it arrived, should I be able to use the python file sitting inside pycatsniffer or is there something else I should be able to use it with?

alphafox02 commented 9 months ago

"This tool is intended to be an alternative to the Windows-based SmartRF Packet Sniffer 2 program using TI's default firmware on CC13XX chips (and combine it with Wireshark's live capture utility). pycatsniffer has been developed on Linux."

Reading this statement again makes me wonder, does the CatSniffer v3.1 arrive from the factory with the "TI's default firmware" loaded on it or is it some other firmware?

alphafox02 commented 9 months ago

But to expand on this, reading up above

"May i know what catsniffer version do you own? cause that will determine what wireshark version can you use, we have been working on reverse the serial commands that the TI sniffer gives us but it is still a WIP you can find that software here we are missing the wireshark plugin connection and dissectors."

It would seem that even if the CatSniffer v3.1 arrived with the "TI's default firmware" to use with pycatsniffer that again the wireshark plugin connection and dissectors are not available.

So this leads me to believe that perhaps for the time being I can't use my CatSniffer for anything in Linux since I can't seem to load an alternate firmware (Sniffle?) and pycatsniffer is missing the wireshark pieces. Would this be safe to say?

Marcelol52 commented 9 months ago

Hi,

Just wanted to adress some of your feedback as best as I can.

"Further clarification, with the CatSniffer v3.1, what can one use it with in Linux? If I receive the CatSniffer from the factory and leave the default firmware on it as it arrived, should I be able to use the python file sitting inside pycatsniffer or is there something else I should be able to use it with?"

Yeah, the firmware that comes preloaded with the board is the SerialPassthrough and the sniffing firmware on the cc1352. That should work with the python tool pycatsniffer.py.

"Reading this statement again makes me wonder, does the CatSniffer v3.1 arrive from the factory with the "TI's default firmware" loaded on it or is it some other firmware?"

It comes with the latest version of the sniffing firmware that you can find on our repository.

"So this leads me to believe that perhaps for the time being I can't use my CatSniffer for anything in Linux since I can't seem to load an alternate firmware (Sniffle?) and pycatsniffer is missing the wireshark pieces. Would this be safe to say?"

For now the pycatsniffer.py tool is on a develpment stage, we are working on it to be an alternative to the SmartRF Packet Sniffer from TI that would work on any OS. It is true it is still missing some things, but we are planning on getting a better version out by the start of next year. This is a rather complex application and it is taking some time to get developed.

Regarding the other 3 available firmwares on our repository, you can load any of them using the python tool using linux. And they all work with the OS as well.

There is also the option of developing custom firmwares to use with the board, we have a tutorial on the wiki for this too.

We are also currently working on a big restructure of our wiki, to make it easier to understand, add more detailed tutorials and update some data.

We really appreciate your interest and effort when it comes to our products. We encourage you to stick around and contribute to this project. Even with just your feedback you help us a lot with making our products better.

Hope this clarified most of your doubts, if you have any other or I did not adress somthing here, don't hesitate to comment here again.

Hope you have a great day!

alphafox02 commented 9 months ago

That was super helpful clarification. I do have a remaining problem for the time being. It’s not possible for me to flash the firmware to anything else besides what came from the factory, so unfortunately I can’t test anything within Linux. I’ve loaded the rp2040 boot file, attempt to put it on boot loader using now the correct button pushes, but ultimately I end up with a sweeping motion on three lights with the 4th led blinking. It’s been confirmed elsewhere the 4th led should be off. So in my case every time I try to flash a firmware with the python tool it fails.

This brings me back to my initial suspicion, that for the time being I can’t really use it for anything in Linux until either the pysniffer tool is all working or I figure out why I can’t get into bootloader mode.

lukeswitz commented 9 months ago

For now the pycatsniffer.py tool is on a develpment stage, we are working on it to be an alternative to the SmartRF Packet Sniffer from TI that would work on any OS. It is true it is still missing some things, but we are planning on getting a better version out by the start of next year. This is a rather complex application and it is taking some time to get developed.

That’s good, but the python script alone doesn’t work. In your docs it’s all a mess. Please provide steps how to compile your tool for Linux and what linux dependencies it requires as TI doesn’t support many distros. Your docs only show TI SDK being used in conjunction with it and witeshark and it’s all windows based. It’s just so confusing for a simple tool.

alphafox02 commented 9 months ago

What I’m tracking and seeing is the pyCatSniffer is one thing you’d use in Linux, but as mentioned above it’s not fully complete yet. I didn’t have to compile anything and dependencies are listed in the pyCatSniffer directory. The sniffle firmware is built already, but unfortunately for me I can’t seem to currently flash my 3.1 to anything else, otherwise I’d make some video tutorials in DragonOS this weekend and share usage within Linux.

lukeswitz commented 9 months ago

It’s looking for a serial device and fails is my experience. The code does work in theory

Marcelol52 commented 9 months ago

" That’s good, but the python script alone doesn’t work. In your docs it’s all a mess. Please provide steps how to compile your tool for Linux and what linux dependencies it requires as TI doesn’t support many distros. Your docs only show TI SDK being used in conjunction with it and witeshark and it’s all windows based. It’s just so confusing for a simple tool."

Hi,

There is no need to compile anything for the tool. Check the instructions on how to use the tool on the README.

If you want to, we can schedule a videocall to solve some of the questions you have.

lukeswitz commented 9 months ago

Sniffle is the one I have trouble compiling and the output from sniffle appears as an Adapter in witeshark but shows no data or won’t open the session.

Marcelol52 commented 9 months ago

Hi Luke,

There is more documentation that could help you about Sniffle on their repository. We are working a restructure of the whole CatSniffer Wiki. We expect to have it by next week. We will have some video/GIF examples of the different firmwares and softwares working with the CatSniffer. I can only ask you right now to be patient for a little longer.

Marcelol52 commented 8 months ago

Hi Luke,

We will close this issue for now. The new Wiki will be out soon and there will be a more detailed section on how to use Sniffle.

If you have any other questions let us know.

lukeswitz commented 8 months ago

Cool, thanks for all the help!