On Tue, Oct 16, 2018 at 1:55 PM Matthias Schmidt
<matthias.schm...@gmail.com> wrote:
>
> And here it is:
>
> https://github.com/ms140569/loki/releases/tag/1.2.0


Thanks for sharing this. I find this interesting because I've been
working on a very similar idea for an OIDC token manager CLI, and came
up with almost the same scheme regarding how you used the domain
sockets and the agent. I used rpc instead of a raw protocol though,
and the agent times out after a while in my case. You can take a look
at https://github.com/bserdar/took the crypto rpc stuff is under
crypta package.

It does suffer from the same problems mentioned in this thread: if you
can scan the memory, the master key is there. I'll add memory locking
to mine.

>
> Thanks to your guy's input the key-agent should be now way more secure.
>
> cheers,
>
> Matthias
>
> Am Dienstag, 16. Oktober 2018 20:31:42 UTC+2 schrieb Matthias Schmidt:
>>
>> Hi Christopher + Eric,
>>
>> thanks for your feedback. You are right, i really underestimated the risk of 
>> such attacks.
>>
>> I will lock the key-holding memory in the next release.
>>
>> cheers,
>>
>> Matthias
>>
>>
>> Am Montag, 15. Oktober 2018 23:13:32 UTC+2 schrieb Christopher Nielsen:
>>>
>>> On Mon, Oct 15, 2018 at 1:28 PM Matthias Schmidt
>>> <matthias...@gmail.com> wrote:
>>> >
>>> > Hi Eric,
>>> >
>>> > thanks *a lot* for your valuable feedback! I really appreciate it. See 
>>> > comments inline:
>>> >
>>> > Am Montag, 15. Oktober 2018 12:09:32 UTC+2 schrieb EricR:
>>> >>
>>> >> Since you're looking for opinions on the security concept, two questions 
>>> >> spring immediately to my mind:
>>> >>
>>> >> 1. Does the daemon keep the sensitive data in locked memory that cannot 
>>> >> be paged out? If so, how cross-platform is this?
>>> >
>>> >
>>> > No it doesn't. As of now i consider the root-user a good guy ;-)
>>> > He's the only one who could access the pagefiles anyway.
>>> >
>>> > So is this really an issue? If yes i could use this cross-platform 
>>> > solution to pin the key:
>>> >
>>> > https://github.com/awnumar/memguard
>>> >
>>> >
>>> >>
>>> >>
>>> >> 2. How does the client communicate securely with the daemon? Which 
>>> >> encryption protocol/handshake is used for this? (If it just uses a 
>>> >> socket, what would prevent another process from reading out the master 
>>> >> password?)
>>> >
>>> >
>>> > It's in fact a unix domain socket file which is only accessible for the 
>>> > owner of the key. ( Thanks for bringing this up, i forgot to flag the 
>>> > file correctly - it's now fixed).
>>> > Relying on the file permissions in unix shouldn't be a problem, right?
>>> >
>>> > cheers & again - many thanks,
>>> >
>>> > Matthias
>>>
>>> You seem to be putting a lot of trust in facilities that are trivially
>>> exploitable to a determined attacker. For software like a password
>>> manager, assuming the kernel is secure is a poor security model. In
>>> addition to the existing attack surface, we live in a world where
>>> side-channel attacks are becoming more common, e.g., Spectre and
>>> Meltdown, so it isn't safe to assume the kernel or hardware are
>>> secure. A password manager needs to have a robust security model that
>>> has a minimal trust model if it is to be more than a toy.
>>>
>>> Just my $0.02
>>>
>>> --
>>> Christopher Nielsen
>>> "They who can give up essential liberty for temporary safety, deserve
>>> neither liberty nor safety." --Benjamin Franklin
>>> "The tree of liberty must be refreshed from time to time with the
>>> blood of patriots & tyrants." --Thomas Jefferson
>
> --
> You received this message because you are subscribed to the Google Groups 
> "golang-nuts" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to golang-nuts+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to