@stgl Always interesting to see people break open devices i so often see but isn't allowed to break. Was a nice read thanks.
@stgl Love the 'disclosure timeline' ๐Ÿ˜
@stgl Excellent analysis 
@stgl Thanks for this interesting blog post! Do they publish their kernel source or is it another GPL violation?
@zeewox I didn't ask, might be something to try :) I think GPL violations are quite common in these kinds of things

@zeewox They don't need to publish any source code, this is a very common misconception.

@stgl

@amszmidt @zeewox Please explain. They use a modified kernel and distribute it in binary form, how are they not required to also distribute the source code?

@stgl @zeewox You changed the question slightly.

Does the GPL require that source code of modified versions be posted to the public? (https://www.gnu.org/licenses/gpl-faq.html#GPLRequireSourcePostedPublic). --- "No."

The question here is if the device was made available to the public, or clients ... clients would be able to request the source code, but not random person since the device is not theirs.

Frequently Asked Questions about the GNU Licenses - GNU Project - Free Software Foundation

@amszmidt @zeewox Okay, fair point. But these devices are freely available on Ebay, so basically everyone can own one. So anyone can get entitled to access the source code, because surely, this does not only apply to "direct" customers, right?

@stgl I think you'd have to ask the re-seller (I am assuming! since this is eBay) for the code, not the manufacturer since the re-seller is re-distributing the device and not the manufacturer. So to hold the manufacturer responsible here is unfair.

I.e., if you get a copy of some #GNU #GPL program from me, I'm not responsible if you re-distribute it later and refuse to provide the source code.

@zeewox

@amszmidt @zeewox Interesting, I guess that makes sense.

@stgl Did they publish their GPL sources for Linux etc.?

(btw, nice to see an ARM926EJ-S in the wild, these things can run a subset of Java bytecode in hardware)

@jn Not sure, I didn't ask. Might be something to try :)

Yes, old-school ARM9. Random fact: the Ti Nspire calculators also all have a ARM926EJ afaik.

@stgl yup, and the Hackspire people have written one of the best public resources about Jazelle

https://hackspire.org/index.php/Jazelle

Jazelle - Hackspire

@stgl Oh no! This is the SumUp Solo incident all over again ๐Ÿ™ˆ

They do indeed use the Linux-part of the device also during payment processing... While most swiss merchants' POS systems will speak the TIM protocol with the device, you can throw Worldline a few โ‚ฌ per month and they will remotely install a ZVT-to-TIM service on the device. That way, merchants using "german" POS software can use their existing protocols.

@stgl thanks for the nice writeup. Sounds lika a lot of phun.
@stgl Fascinating! And useful!

@stgl Doom port in 3.. 2.. 1.. ;-)

Would be interesting if the root console could be configured to also listen on the network interface.. weirdest mini-server ever.

@stgl
"Wait, what!? Thatโ€™s it? Iโ€™m in?"

:-D

@stgl
"The โ€œinsecureโ€ Linux, running on the second processor, mp2, only handles ... the updating,..."

Would this open up an insecure update path?

@stgl
TBH I'm really in awe of your hardware capabilities. I'm too short sighted to do such delicate works.
@PiiiepsBrummm Not easily no, there are signature checks in place. But something might be possible with some more effort and time, I merely scratched the surface here

@stgl "The system runs a 3.6 kernel, built with Buildroot 2010.02 (!) in February of 2023"

so it's basically an up to date debian system

@stgl

Could not resist and bought one ... ๐Ÿ˜…

The rootfs is such a mess !

@Xilokar Very cool! Did you end up dumping the same version? Did my tool work? I would love to have a chat sometime about your insights and your thoughts about the (presumed) system architecture. Feel free to PM me if you're interested!

@stgl

I'd love too having a chat about all of this too!

But first let me dive a little into the internals...
I've only looked at it 3 hours yesterday night ๐Ÿ˜

Did not have to use your tool (rootshell on the exposed debug port, and exported the rootfs over network)

This way, I have an untampered running device.

The version is newer, at least for the bootloader:version_id:v1.7c+00000:gad03c1b Dec 17 2019 15:48:45 owi

Did not figure yet how to get the "firmware" version ๐Ÿ˜…

@Xilokar Cool, just let me know.

Ah of course, that's the smart way, nice! Weird that there are still vulnerable devices floating around more than half a year after disclosure...

@stgl
I was also surprised ! (although, stuff on ebay are somehow outdated...)

But maybe they are confident that it is not a major issue...

Let's try to prove them wrong ๐Ÿ˜