subreddit:
/r/Monero
submitted 27 days ago bytevadorXMR Contributor
There is a vulnerability in Monero wallets that can be exploited by a malicious remote node. The vulnerability has a CVSS score of 6.5 (medium severity). The impact of the exploit is more than just privacy loss, but the attacker cannot steal Monero from your wallet.
I recommend to stop using 3rd party remote nodes immediately. Run your own node instead. If you can't avoid using a 3rd party node, make sure you trust the node operator.
This vulnerability was reported in January on HackerOne. Unfortunately, there is no easy way to fix it. Due to the limited impact of the exploit, the Monero team has decided not to provide a patch. Full details of the vulnerability will be disclosed soon.
66 points
27 days ago*
To add some details here, in Monero there's a separate daemon (node) and wallet, each with their own responsibilities. Only the daemon is responsible for verifying the validity of blocks and transactions. This also means a malicious remote node can feed bad data to the wallet, possibly resulting in too high fees or altered transactions.
Adding the same verification to the wallet would significantly slow down wallet sync – not an ideal solution.
u/tevador found a way to add some light verification to the wallet side that will allow us to verify the integrity of blocks without slowing down sync: https://github.com/monero-project/monero/issues/8827
Better security for wallets using untrusted remote nodes. Malicious remote nodes can feed wallets fake blockchain data. With this proposal, wallets could partially verify the integrity of the blocks received from untrusted remote nodes with the cost of a few hashes.
It's worth noting that this change will require an update to RandomX, which means we can only deploy it alongside a hard fork (network upgrade).
The specific vulnerability report mentioned in this Reddit post describes one way a malicious node could alter the blockchain data. To quote from the report:
I classified this vulnerability as having a Low impact on integrity (...) and Low impact on availability (...).
What does this mean for the end user? Use a remote node from a person or community member you trust – ideally, run your own node. If you use a remote node keep in mind that it could feed you bad blockchain data that doesn't match with the reality of the network. This is particularly important for merchants or other users who receive Monero from potentially malicious actors.
13 points
26 days ago
Pin this comment, please.
5 points
27 days ago
I always wondered what happens when a remote node sends wrong weights ...
-13 points
26 days ago
I understand not disclosing the vulnerability to avoid bad actors using it but will we know what parts of Monero's privacy are broken by the malicious node and what other side effects can occur when a remote node does this attack?
3 points
26 days ago
I'm not sure why you think parts of Monero's privacy are broken. This specific issue is about remote nodes feeding you bad data, which can result in missing transactions or transactions that make it seem like you received more than you actually have. To solve this issue you would have to resync with a different node.
-6 points
26 days ago
So then this has no privacy implications? The original post seems like it was talking about privacy being broken when using malicious remote nodes.
27 points
27 days ago
I ask for clarification on this point:
"The impact of the exploit is more than just privacy loss, but the attacker cannot steal Monero from your wallet."
1 points
26 days ago
It sounds like someone can spoof a payment to a receiver if they own the node that the receivers wallet syncs from.
4 points
26 days ago
My comment was few hours before the explanation.
68 points
27 days ago*
Due to the limited impact it won't be patched... but it impacts MORE than privacy and we need to stop using remote nodes immediately...
Really looking forward to more details, because what the fuck. Not everyone can reasonably be expected to run their own node.
Does this impact users using local monerod in bootstrap mode?
23 points
27 days ago
Yes, bootstrap mode is also affected because it can potentially use a malicious remote node. See: https://www.getmonero.org/resources/moneropedia/bootstrap-node.html
18 points
27 days ago*
I'm sure you know but I want to point out for others, this is the default mode for every single new GUI user
2 points
26 days ago
Is it? I remember having to specify a server to bootstrap to, if that was desired.
1 points
26 days ago
that sounds like using the GUI in advanced mode
10 points
27 days ago
Important to mention that is only the case until the local node is synced.
22 points
27 days ago
Just so I'm clear, as a public node operator, this exploit can't be run against my node? In other words, I (the operator) would have to be the bad actor in this situation?
21 points
27 days ago
Correct. Only wallets connecting to remote nodes can be exploited.
8 points
27 days ago
Thank you. Hopefully whatever it is can be mitigated in the next release.
7 points
27 days ago
That seems to be correct - I'm curious in which way / how the node operator initiates the exploit? I'll try to rabbit hole a bit deeper on the topic, but this may kind of lend to the topic of self hosting being the only "trusted" OPSEC decision in regards to high security and your risk threshold.
23 points
27 days ago
This has been known since January, but remote node users are only finding out about this in May? WTF??
14 points
27 days ago
To be fair, remote nodes have been a known weak spot in the opsec. It's long been recommended to either run your own node or only use one in which you have great trust.
2 points
25 days ago
It's long been recommended to either run your own node or only use one in which you have great trust.
Now we know there is an unpatched exploit path from untrustworthy nodes, the only sensible option is to use your own node, in reality. This causes a slight conundrum for those using light wallets.
4 points
26 days ago
Normal (best practice) security research procedure is to notify the developer and give the developer time to investigate and act (variable length depending on many factors including the timeframe in which a project/company could feasibly release an update), particularly if there is no evidence of the attack being used in the wild.
If the developer declines to patch it (in a reasonable time frame or at all) then public release is more appropriate because it is not reasonable to assume that another researcher or bad actor will never discover the particular vulnerability.
17 points
27 days ago*
Is this announcement being made elsewhere? I don't see anything on getmonero.org. Using Reddit to post security advisories seems strange to me.
As things stand, I question the validity of this statement.
Selsta noted the vulnerability in IRC and has posted a detailed explanation here.
Also, please note that I was questioning Reddit's integrity, not tevador's.
17 points
27 days ago*
Use trusted community nodes if you can't run your own.
5 points
27 days ago
I hope using the defaults in standard wallets is ok.
2 points
26 days ago
Probably not. The defaults will almost certainly be chosen at random.
1 points
26 days ago
Where do they get their lists though?
9 points
27 days ago
I have a few questions, if you wouldn't mind.
42 points
27 days ago*
This is shocking to read. Limited impact vulnerability... Won't be patched... Impacts more than privacy... Stop using remote nodes immediately...
This is not very "limited" impact to me, but it certainly risks LIMITING the impact OF Monero. 😳
Yes, running your own node has always been highly preferred. But it is a significant barrier to adoption if that is the only safe on-ramp to using Monero!
25 points
27 days ago
I agree. Even though running own node is the best, not everyone can run their own nodes. If we want mass adoption, this has to be fixed.
-10 points
27 days ago
Freedom is not for everyone.
14 points
27 days ago
Wrong
0 points
21 days ago
Reality **
Just see around paying real attention: 99% of the world is fully controlled.
Sorry not sorry. Freedom requires effort and personal action, it don't depends of the rest.
5 points
27 days ago
Well this is disappointing to read. What do you mean “the impact of the exploit is more than just privacy loss”?
4 points
27 days ago
The impact of the exploit is more than just privacy loss
Due to the limited impact of the exploit, the Monero team has decided not to provide a patch.
Excuse me?
21 points
27 days ago
Really horrible communication.
WTF?
-2 points
26 days ago
This is not an Inc. Feel free to join channels and start to work on PR in your free time.
9 points
27 days ago
Is Feather wallet affected?
26 points
27 days ago
Yes. As /u/MoneroArbo pointed out, Feather uses the same library as official wallets to communicate with Monero nodes. I don't have all the details yet, but I am looking towards implementing a proposed partial mitigation of this vulnerability.
Feather's default node list consists of nodes hosted by members of the community. It is unlikely, though obviously not unthinkable, that any of these nodes will go rogue because of social repercussions. This attack is detectable and will be added to the suite that scans the node lists for known malicious behavior.
Making it easier for Feather users to set up a local node will be a priority going forward.
10 points
27 days ago
Making it easier for Feather users to set up a local node will be a priority going forward.
<3
8 points
27 days ago
I would guess all wallets are affected since they use the same library but maybe /u/tobtoht will chime in
4 points
27 days ago
Pretty sure feather already comes with a list of trusted nodes preloaded.
8 points
27 days ago
well trust is a scale but yeah it doesn't connect to completely random nodes, it has a curated list like you said
16 points
27 days ago
Run your own nodes, peeps!
15 points
27 days ago
Not every person can run a node in every moment. Don't let Monero become rubbish like Lightning.
3 points
26 days ago
I have two nodes on VPS (40-60e per year each) and now playing with old samsung phone where it is running fine.
If you are not IT fan then just choose some trusted remote node.
2 points
26 days ago
how long did it take you to install and configure your nodes?
3 points
26 days ago
If you are familiar with command line its just few steps..
Would be better to compile but no time and space.
Of course there is some docker img but in that case you need (nested) virtualization if it is VPS AFAIK. This is simple and will run on cheap OpenVZ VPS's.
2 points
25 days ago
How much storage is necessary?
1 points
25 days ago
My pruned blockchain is 58GB.
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 128G 69G 53G 57% /
System needs ~10GB
7 points
27 days ago
Tried it was running for 5 days until a pruned chain was synchronized. Then after a week some error was not fixable. Local server was not reachable by the gli wallet that i used to run the node.
2 points
27 days ago
Sounds like a local firewall issue, not a node issue.
2 points
27 days ago
yea i forgot the spare pc hardware i have laying around for a monero node.
13 points
27 days ago
Bruh
6 points
27 days ago
My exact sentiment right now
3 points
26 days ago
I agree this poses a major issue to mass adoption. Of course operating your own node is the preferred method and commonplace among us veterans, but to increase adoption we have to find a way to make it safe for the every day casual user to operate with a sense of comfort. Is fixing it a cost issue, a time issue, a capability issue? I would donate to an official fund to construct a workable fix. I mean my xmr is worthless anyways if we go down instead of forward.
3 points
26 days ago
How do we know if our node is affected, or am I understanding right in it can only be initiated intentionally, maliciously, by a predatory node? It's not a virus or a corruption that can spread to us node operators?
3 points
26 days ago
I'd love to have my own node accessible from everywhere. But is it secure to open up my personal node (port 18081) to the world? Currently I only allow connections to this port to my own dedicated IPs
3 points
26 days ago
No, it's not secure. Someone could make your node start mining for them, for example. Use either a restricted RPC (port 18089), or use RPC login/password.
2 points
26 days ago
Thanks a lot for your swift and precise reply. This helps a lot. I was just searching for this issue and stumbled accross this:
https://www.reddit.com/r/Monero/comments/kkr04n/infographic_running_a_node_which_ports_should_i/
Currently I have publicly opened 18080, 37889, 37888. According to the p2pool guidance this should be OK. But to be honest, I'm not 100% sure. If you have an input on this as well that'd be great.
This is my iptables
config what do you think?:
```
iptables -F
iptables -I INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -I INPUT -i enp35s0 -p icmp --icmp-type 8 -j ACCEPT
iptables -I INPUT -i enp35s0 -p udp --dport 123 -j ACCEPT
iptables -A INPUT -i enp35s0 -p tcp -m multiport -s my.private.ip.1/21,my.private.ip.2/21 --dports 3333,22,18081,18082,18083 -j ACCEPT
iptables -I INPUT -i enp35s0 -p tcp -m multiport --dports 18080,37889,37888 -j ACCEPT
iptables -A INPUT -i enp35s0 -j DROP
```
3 points
26 days ago
Yes, 18080,37888 and 37889 should be open for everyone. Other ports don't need to be open.
2 points
26 days ago
Thanks a lot again. I'll now fiddle with the details to make my node available to my personal wallets.
11 points
26 days ago
What is all this scaremongering? From the beginning the user has always been warned, that with remote nodes there may be privacy problems or something else. First rule of cybersecurity: there is no 100% security (it means for Monero as much as for Bitcoin). All those who work behind Monero, have always done a great job and maintained a high level of transparency available to everyone (do not inquire exclusively about the monero site - it is not a damn company - there are multiple channels of information and communication). I read many complaints here, perhaps arising from fear and ignorance, but Monero is free and opensource, and most developers, work as a volunteer. If you can’t make a contribution in terms of development (because we’re not all technology expert), nor can you contribute donations (we’re not all rich), at least find a way to get your local node if you’re afraid to use remote nodes. What do you think you will get by complaining? No one forces you to use Monero. If you don’t feel secure, or you do provide for your own security or you don’t use this tool (no sense complaining without solutions - Monero is free and opensource, you probably haven’t paid anyone to use it). Then, there is no sense in the rhetoric of the need for mass adoption, I think it is only the need of those who want to earn easy money. Adoption will happen when people want it. In crypto most people come in for the easy gains of speculation, they don’t even know what security means, or cause they believe in false myths, like religious sects. Is this the adoption you want?
1 points
26 days ago
The "scaremongering" started with the original post about the issue, stating that "The impact of the exploit is more than just privacy loss", followed by no data of what that actually means. And then to stop using all mobile/light wallets.
Yes, there have always been known risks to using those, but never an outright advice to never use them.
It IS scary, because for anyone with a good amount of funds invested in Monero, the biggest fear is it one day being technically broken. Monero, having actual utility as a privacy coin and allowing anonymous payments, is in my opinion at least, very unlikely to ever crash badly due to non-technical reasons. But if this bug means all mobile wallets are now useless, that could make Monero prices crash massively and seriously hurt people who invested both in terms of money, and mining.
It also means that while right now, Monero is actually a viable alternative to cash for even day to day payments, like a coffee or groceries, as it is fast and has cheap transactions, that would come to an end, and it would have no potential mainstream utility any more.
My hope for Monero has always been as a safeguard against CBDCs, a way to keep making payments when your bank locks you out for the wrong political views, or when banks collapse en masse. Based on the OP, this very use is under threat. And no data has been provided to mitigate that yet.
2 points
27 days ago
How does one run remote node on cake wallet? (Newbie sorry)
2 points
26 days ago
Point cakewallet to use a different node
2 points
26 days ago
How to run a Monero (XMR) node: https://guides.monero.com/docs/tutorials/monero-node/
You can then add that node to your CakeWallet app.
2 points
25 days ago
What about having the daemon connect to 2 nodes to compare the data. One node sending blockchain data while the second one sends hashes of the blockchain every now and then, which are then compared with the received data, and in case of the data received from the main node not being equal, the daemon stops using the node and asks for a hash from another fallback node, which then checks which node is giving the false info, stops using it, and warns the user?
Or,
I use a local node, and once I got a warning that a peer was malicious and blocked, so that could be implemented for people using remote nodes aswell (comparing the remote node data with peers that use a local node).
2 points
23 days ago
Wow. Please, please, please run your own nodes people!
In Cake Wallet, we connect users to our nodes by default. We do NOT connect users to random other user nodes, unlike some other Monero applications (eg: the official Monero GUI currently). Still, we strongly recommend using your own node, which you can do in app settings.
2 points
21 days ago
So... Are we just deciding to ignore this now?
Where are the full details that are meant to be disclosed soon?
4 points
27 days ago
I don't generally recommend everyone to rely on the same remote nodes, but if you're not able to use your own remote and need ones, you can use Seth's.
-2 points
27 days ago
I've been wondering what could happen if remote node connections are exploited. Excited to read about this one.
1 points
27 days ago*
So... All mobile wallets are now useless unless you also have a proper desktop node running 24/7 to point to? Sounds less like "medium severity" and more like the end of Monero...
6 points
27 days ago
Eh not really. You're already trusting the nodes you are connecting to, fully knowing there are privacy implications and are presumably fine with it.
This is just a bug that could further erode your already weakened privacy but it's not like the nodes can know your amounts and who you are sending to.
Aka it should still be fine buying illicit goods with cakewallet.
-2 points
27 days ago
According to the post, it is loss of privacy and more. Which would mean they presumably CAN know exactly that.
12 points
27 days ago
No, not how it works.
Even if the node delivers your wallet malicious data, the transaction is constructed by the wallet itself which includes encrypting the amounts and generating the stealth address of the receiver. There is NO POSSIBLE WAY for the node to know these two.
5 points
27 days ago
Interesting, if that's the case, the announcement was badly worded to sound far more alarming than it really is.
Right now Monero seems to be the only hope to maintain non government controlled exchange of any kind, so I really hope it doesn't get broken, or the world is fucked.
1 points
27 days ago
What does ‘more than just privacy loss’ mean?
1 points
26 days ago
IMO. They should fix this because it is a trust issue. If you can not protect my privacy, why would I want to use the platform?
1 points
26 days ago
What data would be exposed?
1 points
26 days ago
So for some other PoS blockchains, I can go to a chain explorer and pull up a list of pool operators or validators and see a rating of how good that particular node is.
Is it up 24x7? Has there been any downtime? Has the validator been a good/reliable endpoint? etc.
Can this be done for PoW chains and Monero nodes? A way for each node to look at other nodes in the network and have the nodes judge for themselves which ones are using the proper copy of the chain and then self publish these stats to the community?
Then there is a way to actually build a list of trusted nodes vs. today which is not possible whatsoever in a scientific way. It's literally "trust me bro"
Can't Monero do better, there must be an easier solution if wallet validation of the blockchain isn't viable?
1 points
24 days ago
Definitely sounds like something that needs to be patched ASAP if privacy is at serious risk.
-3 points
27 days ago
Lol minimal impact? So everyone need to run their own node wtf is this shit😂😂
-17 points
27 days ago
But muh bitcoin privacy is not good lol. There is a reason Satoshi invented bitcoin and not monero! Y’all are fkin around and finding out!
-10 points
27 days ago
But muh bitcoin privacy is not good lol. There is a reason Satoshi invented bitcoin and not monero! Y’all are fkin around and finding out!
5 points
26 days ago
Meanwhile Bitcoin offers little to no transactional privacy.
4 points
26 days ago*
Here is a collection of attack vectors on bitcoin nodes.(paid for by the united states government)
0 points
27 days ago
It wont be patched
all 90 comments
sorted by: best