4 ms·
Cracking an old ZIP file to help open source the ANC's "Vula" secret crypto code
- Thaxll 2y agoIf you want to crack "old" ZIP and you know a few characters in the archive there is nothing better than: https://github.com/kimci86/bkcrack https://github.com/kimci86/bkcrack
- deleted 2y ago[deleted]
- stavros 2y agoThe program the entire article is about?
- cxr 2y ago[flagged]
- cxr 2y agoThere's a program called bkcrack (<https://github.com/kimci86/bkcrack https://github.com/kimci86/bkcrack>) that can crack password-protected ZIPs. An interesting use case is documented in a blog post where someone (the Cloudflare CTO) uses it to recover some otherwise lost source code for a DOS-era program used in South Africa to record encrypted messages to (audio) tape and play them over payphones. <https://blog.jgc.org/2024/09/cracking-old-zip-file-to-help-open.html https://blog.jgc.org/2024/09/cracking-old-zip-file-to-help-o...>
- deleted 2y ago[deleted]
- geenkeuse 2y agoFascinating. We have been through so much here in SA. Hoping that this GNU of ours sets back the Doomsday Clock. Recommendation - Action Kommandant. A peek into the life of Ashley Kriel, one of our martyrs and the pride of Bonteheuwel.
- nxobject 2y agoThank you so much for sharing his name - it has been a passion of mine to learn about some of the gifted fellow travelers of the ANC, whose stories (and diverse talents!) are often overlooked… I learned about Athol Fugard in secondary school English, from a bolshie teacher who fled from SA to Canada in the 80s to avoid surveillance, and it opened my eyes. My best wishes to the SA people as well. A nation of so many gifted people and natural riches deserves so much better. At least it seems like the era of sclerotic internal politics in the ANC is over.
- atlas_hugged 2y agoTIMBOBIMBO hahahhaha
- declan_roberts 2y agoRead through the whole article to see the password reveal. Was not disappointed!
- Thorrez 2y agoThat wasn't the password of the zip file that John cracked. TIMBOBIMBO was the password of a file that was inside the zip file, specifically a program. The program prompted for that password before it would continue running. The blog post doesn't say the zip file password. It's not clear to me if the program that cracked the zip file even found the zip file password. It might just be able to find the plaintext but not the password.
- qingcharles 2y agoI too was waiting to see what the ZIP password was after all these years. I wonder if there is a way to reverse the decryption key into the password, or is it a sausage machine like password hashing? How long would it take to brute-force this on a modern PC?
- jgrahamc 2y agoI spent a lot of power trying to reverse the actual password and got this far: PROGRAM PATTERN MAX LENGTH TESTED bkcrack ?p 14 bkcrack ?u?d 16 bkcrack ?u 17 bkcrack ?l 15 bkcrack ?u?l?l?l?l?l?l?l?l?l?l?l?l?l?l?l 16 bkcrack ?u?l?u?l?u?l?u?l?u?l?u?l?u?l?u?l 16 hashcat ?u?l?d 14 The author kindly modified bkcrack based on Tim's fuzzy recollection of what he thought he might have chosen for the password: https://github.com/kimci86/bkcrack/pull/56 https://github.com/kimci86/bkcrack/pull/56 and https://github.com/kimci86/bkcrack/pull/126 https://github.com/kimci86/bkcrack/pull/126. However, I ran out of time to work on this part and it seemed more important to get the actual code running. Also, in the course of things I discovered that Tim used PKZIP inside the BASIC code using a password that used non-printing characters.
- rasz 2y ago>Operation Vula ... 8-bit computers, DTMF tones, acoustic couplers CIA/NSA got a whiff of Operation Vula using off the shelf Philips PX-1000 with build in DES and backdoored the product by bribing Philips https://www.cryptomuseum.com/crypto/philips/px1000/ https://www.cryptomuseum.com/crypto/philips/px1000/
- rurban 2y agoWhich Tim Jenkins did overcome by using his own systems and own crypto. No backdoored DES, but ultimately secure one-time pads transported via floppies by the stewardess to each party. If they got hold of such a floppy in SA, it would only compromise the messages of this one receiver. Which would be detected sooner or later.
- jll29 2y agoProbably using ANY commercial encryption tech, you're doomed. But it is naive to generate the key for a one-time pad using a PSEUDO random number generator! The whole point of the one-time pad is to achieve true security because you can use truly random keys. The kind of key that used here could have been created locally by just exchanging the seed, which would have prevented putting all these stewardesses in danger ;-). I understand the developer was self-taught (and "learn as you go" on top), so it's understandable, but whoever reads this and has truly important secrets, don't be that silly. Having said this it is no easy to generate truly random numbers in large quantities. Again, you will need to build yourself your own hardware device, because most likely, all commercially available gear is rigged.
- nullc 2y ago> But it is naive to generate the key for a one-time pad using a PSEUDO random number generator! which is what every stream cipher is, ... and indeed, they do suffer the expected failure modes from key reuse, etc. Doesn't stop them from being a popular best practice. :)
- rurban 2y agoI've got a look at his number generator for the secure one-time pad, and Melissa O'Neil would be proud. Almost pcg. It uses the powerbasic system Rand LCG to switch between 3 new rand1-3 functions, two of them with different LCG's. https://github.com/Vulacode/RANDOM/blob/d6a1a1d694b22e6a115b50a6c2d2bada41cda075/RANDOM.BAS#L306 https://github.com/Vulacode/RANDOM/blob/d6a1a1d694b22e6a115b...
- Vecr 2y agoNowhere near good enough for an actual One Time Pad, obviously.
- nxobject 2y agoAnd the original programmer wrote a of this while having to pick up crypto and BASIC on the go, too. Never roll your own crypto is the first rule, unless you were in the late 80s and working with fancy new tech…
- 20k 2y agoMan that one time pad generation is...... not good, I would bet that its very possible to recover the seed state for the different generators, LCGs are trivial to reverse engineer. It looks like the PRNG's are seeded by the system RNG as well, which means that you only need to recover the initial seed of the system's LCG to reverse engineer the one time pads I don't know what the seed size is of the system LCG, but if its 32-bit (which I think it is), you could simply bruteforce the seed state, and do entropy analysis on the result to crack it in like an hour tops
- tetha 2y agoHm. This is crypto from 30 years ago. And from reading around, the OTP generation never left UK jusidiction, so it would be a black box to attack. Handwaving how this is trivial to defeat with current compute and crypto analysis with full information feels quite unfairly dismissive, even if correct. Especially since it was strong enough that human error dominated.
- 2y ago
- deisteve 2y ago[flagged]
- antiraza 2y agoContinue, please.
- sterlind 2y agobut you denounce apartheid, right? and you condemn the Bantustans? and the chemical and biological weapons being developed under Project Coast, including mass sterilization of the black population, as revealed by the TRC hearings?
- peterfirefly 2y agoThe Truth and Reconciliation thing was curiously one-sided. Why was Winnie Mandela allowed to be free until her death, for example? Why did we hear so little about the ANC's crimes?
- _djo_ 2y agoIf it was one-sided, it was in favour of the Apartheid regime. It was an inevitably imperfect system that went far too easy on the old Apartheid regime guard and let nearly all of them get away with what they had done. Not a single senior Apartheid regime leader was prosecuted and jailed for their crimes, even though most refused to co-operate with the TRC. The ANC at the time decided to let things lie in the name of reconciliation, forward progress, and focusing on crime, but they would've been fully in their rights to have dedicated serious investigative and prosecution resources against the people who ran the Apartheid state.
- peterfirefly 2y ago> If it was one-sided, it was in favour of the Apartheid regime. Who committed most of the crimes (and by far the worst crimes) back then? Definitely not the whites. And who were most of the victims? Also not the whites.
- edent 2y agoOne thing I found fascinating about Vula was how the lack of usability of the system was its downfall. You had highly committed activists, fighting for freedom, up against a murderous regime - and yet they still failed to use the system properly. Activists left documents unencrypted. Keys were easily obtainable. Some important communications were sent in the clear because people found the software so cumbersome. We all know that setting up PGP and using it properly is a pain in the neck. Security is usability. I wrote a bit more about Vula at https://shkspr.mobi/blog/2014/01/the-hardest-problem-in-encryption-usability/ https://shkspr.mobi/blog/2014/01/the-hardest-problem-in-encr...
- amne 2y agoimagine losing your house keys and never being able to enter it again. usability, most of the times, reduces security.
- jll29 2y ago"Imagine"? There are plenty of folks who lost access to the crypto wallets with millions in it.
- bravetraveler 2y agoI used mining as a stability test, there's a small fortune floating somewhere. There was a time one could feasibly get a full Bitcoin every week with a single core Athlon64 chip running 24/7 Before Agent 47 starts sleuthing, the wallet is on a mechanical drive that almost surely didn't make it through at least a dozen moves over just as many years. Good luck.
- tampontim 2y ago[flagged]
- _djo_ 2y ago[flagged]
- sweeter 2y agoI find the fall of the South African apartheid pretty fascinating all around. I wasn't really even aware of this aspect. Fun fact, this is where the BDS movement started (boycott, divest, sanction) and the majority opinion at the time was that the apartheid would never end... but after a long time of continuous pressure from many different pressure points, it caused a lot of stress which led to its collapse. pretty interesting that this was done on a Toshiba T-100. What a neat computer.
- raymond_goo 2y agoBrute Force Rust code: https://github.com/rhulha/ZipMcKracken https://github.com/rhulha/ZipMcKracken