<div dir="ltr">I would be nice if BEAM could address these issues (not Erlang) so that new more secure languages could be implemented on the BEAM.<div><br></div><div>I think it will be done sooner or later. The sooner the better IMO if BEAM is to remain relevant in the long term.</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Jun 1, 2016 at 7:32 AM, Nathaniel Waisbrot <span dir="ltr"><<a href="mailto:nathaniel@waisbrot.net" target="_blank">nathaniel@waisbrot.net</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><span class=""><div><blockquote type="cite"><div style="font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;font-size:12pt;background-color:rgb(255,255,255);font-family:Calibri,Arial,Helvetica,sans-serif"><div style="margin-top:0px;margin-bottom:0px"><span style="font-size:12pt">Does anyone know if there is anything in the works or proposed around the "If someone gets inside the network, the cookie is the only protection left" situation?</span></div></div></blockquote><br></div><div><br></div></span><div>Yes: use SSL for distribution and to talk to other services.  <a href="http://erlang.org/doc/apps/ssl/ssl_distribution.html" target="_blank">http://erlang.org/doc/apps/ssl/ssl_distribution.html</a></div><div><br></div><div>This assumes that by "inside the network" you mean past the firewall/gateway/NAT. But you could also view this as using encryption to build an inner network that just contains your Erlang nodes. Once you're inside *that* network things are still open.</div><div><br></div><div>The author suggests that since the BEAM is an OS you might want all the access controls that a full OS offers. This would (e.g.) allow some people to launch processes and kill the process that they'd launched, but only some root user could terminate the Cowboy application. This would take an enormous amount of work and there are other ways of getting the same effect, so I can't imagine this happening.</div><div><br></div><div>What you should do is understand that a network of Erlang nodes behaves (as much as possible) like a single node. If you don't trust a remote node, do not link with it under any circumstances. If you want to allow trusted and untrusted code to interoperate, you need to write your own communication layer for them.</div><div><br></div><div><br></div><div>Finally, to get the security model of all the other languages that I'm aware of, you can disable distribution.</div></div><br>_______________________________________________<br>
erlang-questions mailing list<br>
<a href="mailto:erlang-questions@erlang.org">erlang-questions@erlang.org</a><br>
<a href="http://erlang.org/mailman/listinfo/erlang-questions" rel="noreferrer" target="_blank">http://erlang.org/mailman/listinfo/erlang-questions</a><br>
<br></blockquote></div><br></div>