Tag Info

New answers tagged

6

A smart card works by keeping a secret hidden and answering a challenge that proves it has the secret. It, theoretically, should never reveal that secret to anyone and it should be unrecoverable. There are some technical ways you might be able to get around it, but most of them are destructive to the card. This means you know if your smartcard has been ...


6

It's (theoretically) harder to duplicate a Smart Card. You can duplicate a USB drive easily. If I steal both, you are equally in trouble, but if I steal the USB, duplicate it, then replace it without you knowing, then you are in trouble and you don't know it.


1

I have recently done the same thing with a Doku Wiki (for secure, offline research storage) on my home desktop (An Arch Linux Box). Only instead of using Ubuntu directly, I ran my server through Virtualbox and Turnkey-Doku Wiki and only turn on Vbox when I need to add/remove things from it. I also have it setup with a bridged connection so it can still be ...


0

I'd argue that they are fundamentally no more secure than a traditional lock. These types of locks can also be opened by a standard physical key, so they by definition are susceptible to all of the weaknesses of a traditional lock plus any weaknesses introduced by the electronic layer. Whether or not these additional weaknesses are significant is an open ...


0

Auth tokens only really seem to make sense to me when their lifespan is kept short. As far as I can tell, this scheme does not alter the fact that an intercepted token can be replayed which would seem to be the problem with all simple token-based approaches? (or maybe it is just late and I've not read it properly :) Certainly, I'd want to make sure that ...


3

Yes, making a device trusted is absolutely less secure -- but in general it is secure enough. The thing to consider is how easily someone could gain access to the trusted computer in question. Among the questions you'll want to ask yourself before making a computer a trusted device: Do you control the physical unit? (For example, is it in a locked home or ...


0

Nowadays the SIM cards hold less personal info than they used to hold; smartphones don't store contacts in the SIM anymore, SMS messages are immediately copied to the smartphone's memory and erased from the SIM, so in the end the only personal thing that's left is the phone number itself, it can still be used for social engineering, calling premium rate ...


2

The whole point of having a "stateless" thing is to avoid maintaining state (here, on the server side). Stateless servers are unavoidably subject to replay attacks, by definition. The problem you are envisioning is basically a replay attack. If attackers can steal clients' cookies, then you already have bigger issues. If they cannot, then there is no ...


2

No, there really isn't. In order for this work, you need to have some form of session management in place to determine whether the token in a cookie is valid or not. They may mean maintaining a list of valid sessions as in traditional session management, or explicitly blacklisting tokens that have expired for some period of time. (Less overhead on the ...


0

What you've described is very similar (almost identical) to the basics of the OpenPGP standard. It would be wise to read up on OpenPGP before attempting your own implementation of this scheme. To answer your question posed here: Here is where I am having trouble. If I decide the store a hash of the passphrase in the Session, then the server would ...


0

You certainly should authenticate the user who clicks the link. Otherwise, as you say, someone could inadvertently confirm an email address. However, it is usually possible to authenticate the user transparently, so they don't need to enter their password. The way we achieve this is using a session cookie. During the signup process, the new user is issued a ...


0

I think an alternative solution might be to ask new users to first specify just an email address, then confirm that with a hashed token, and then ask them to set a password. But I don't see very many online services that do it this way, either. This is the most secure way as it guards against user enumeration attacks. If the email address is already ...


3

The answers I've gotten have been good, but I wanted to provide a bit more depth, going specifically in to why the system exists at all, which should explain a bit more about what it's good for. Disclaimer: While I now work for Google, I don't work on anything related to this project, and I have no proprietary knowledge about any of this stuff. ...


0

I can't tell for sure. But if you are looking for a similar feature I would implement it as following: An ID contains a private and a public part (That's what Teamspeak does). So I guess it's some asnyc encryption key you can generate yourself. Now just generate a sequence of numbers e.g. s = [1..n] and hash them. As soon as the first M bits of the ...


1

Thieves are stealing phones now, not for the value of the phone, but because before it's reported lost or stolen they're dialling premium rate numbers which they control. They get a share of the revenue from dialling the numbers so they steal the phone, transfer the SIM to another phone and then call the premium rate number. The original owner of the phone ...


2

Seems like you've got it pretty much down. Universal Authentication Framework (UAF) is meant as a replacement for simple authentication, and Universal Second Factor (U2F) is meant to replace today's time-based, second factor authentication. While it does seem like the end-user will experience the same experience on both devices, this won't always be the ...


3

The part of WEP you describe isn't really a major weakness because most encryption algorithms in use today are immune to known-plaintext attacks. Basically, this means that having access to both the encrypted data and the decrypted plaintext will not help you figure out the key in any way - so "figuring out the password from here" would NOT be ...


2

HMAC is generally more applicable to situations where two entities want to communicate securely over the internet. It provides two key things, confidentiality and integrity. confidentiality by proving the remote client has possession of the "secret" ingredient, integrity, through validation of message digest. In your use case, local storage encryption, ...


3

The option names are not part of the SSH protocol; they are specific to a given implementation. I suppose you are talking about OpenSSH. As per the documentation: RSAAuthentication Specifies whether pure RSA authentication is allowed. The default is “yes”. This option applies to protocol version 1 only. So this does not apply to your case, ...


1

I just read some of the specs because I wanted to know if the device stores the actual (private) keys. I can try to answer some of the questions. OTP are simply one-time tokens, while U2F is based on public key cryptography; more specifically, the Yubico Fido U2F key seems to use elliptical curve cryptography. U2F should help to protect against phishing ...


0

Some banks have JavaScripts that encrypt/hash the data on client-side using for example a public key or a hash algoritm, and then sending it. Submitting the form with ENTER on a computer with JavaScript disabled, would send the details "over the clear" (note: The site might still be SSL-encrypted if it use SSL, but the login details would get sent in clear ...


0

Google for Amazon cookie management. Authentication is only valid for a certain period of time, and once it expires they will not let you perform critical operations without going through it again. That is they first check if your "low quality" identity is authorized to perform an operation, and otherwise ask you to authenticate again to obtain a "strong ...


0

You are actually bringing about a very interesting point. Instead of just seeing authentication as proving your identity (the fact that you are indeed Bob), see authentication in a broader sense whereby your prove the authenticity of a claim. For instance, you could claim to be 21 years of age, you could claim to be an EU citizen, or you could claim to ...


0

I guess what is really confusing about this is that it goes against the typical way things are done. But if you want to break it down, let's look at the ways you've proposed. Authentication then Authorization This way, a user must prove they are who they say they are (in this case with a username and password, and once they do, the session is authorized ...


2

I have seen systems that filter by a list of allowed IP addresses first, so in order to even attempt to use an authentication method you have to be coming from a specified IP address or range. This is similar to what you are describing. But in general, authorization refers to deciding what an authenticated user can do, and so logically comes after the ...


1

What you are describing is, in fact, authentication. It is just a more explicit description of the steps involved in authenticating than you might generally see. Specifically, the steps in the authentication process are identification, and authentication. First you get an identifier (such as a username) and if it is a valid identifier and can be matched ...


2

I suspect this decision was not security related at all. Probably they had issues with users accidently changing focus on the form before they were ready because of their enter key behavior. Facebook is very bad about this. This company just wanted to give the user the option to prevent the enter key from doing anything but inserting a cr/lf.


2

I'm answering my own questions but for future seekers, I found this great article: http://www.thebuzzmedia.com/designing-a-secure-rest-api-without-oauth-authentication. Maybe I didn't explain my question well but this was the answer I was looking for. -- UPDATE -- Rory Alsop, asked to post a summary. You should definitely read the source. But in case you ...


5

You cannot trust the client, ever. A malicious user may abuse legitimate client software (theirs, or someone else's) An attacker may reverse engineer enough of the API to pretend to be a legitimate client Instead of trusting the client, work to ensure that the client's input is trustworthy. input validation input sanitization schema compliance velocity ...


6

I have not yet fully explored the spec. But: U2F is not using an OTP. It is really about site authentication and using possession of a private key as a factor. Time-bound OTP systems do an excellent job of combating phishing (stealing credentials) because they are hard to steal. U2F is really meant to combat MiTM attacks. Brute-force attacks would not ...


3

You are relying on "security through obscurity", and implementing this type of security is never a good idea. You can create a vastly more secure and easier solution by implementing SSL (or TLS) on your solution. Here is a very good tutorial on Stunnel: you install stunnel create custom certificates encrypt everything transparently Using stunnel you can ...


12

U2F is capable of using an encrypted channel using public key crypto to ensure ONLY the right server can get the one time token. This means plugging it in when on a phishing site means nothing happens, they can't get into your account. Instead they have to rely on technical attacks like XSS and local malware. It is supposed to be able to hide the fact that ...


1

Before I give my answer, lets first go over the subject of HMAC. Hash-based message authentication code (or HMAC) is a mechanism for calculating a message authentication code involving a hash function in combination with a secret key. This can be used to verify the integrity and authenticity of a a message. Now HMAC authentication guarantees the ...


2

First make sure nobody can abuse your codes. This may be even more harmfull than you not being able to login for a short time. So encrypt your phone and your external SD card if data is stored there. This requires that you use a PIN or password to use the phone. So nobody can use Authenticator without knowing that PIN. Don't use 0000 or 1234 but something ...


0

It's probably too late for some sites, but I would suggest taking a screenshot of any QR codes and saving that somewhere secure. That may mean print them and put them in a fireproof box. That will allow you to re-scan them at a later date. If you have that option on any sites, I recommend you do it. A similar option is to scan the QR code with Zxing ...


1

Be careful, you should not confuse keys used for encryption/decryption and keys used for signature, since there usage is different. So the key couple A-pub/A-priv is used for signature only, while the key couple B-pub/B-priv is used for encryption only. Be also careful that you should sign the ciphertext and not the plaintext, otherwise having the hash of ...


0

To answer your questions: 1) How do you handle a situation with a compromised token secret which is shared between a client and the server? Add an expiry date to your token. Make the sure the token cannot be used after the expiry time. But this doesn't prevent unauthorized access within the token's expiry period. So, to overcome this problem you can ...


0

The use of encrypted OAuth tokens is good approach to satisfying the security requirements in RFC-6749 section 10. Encrypted OAuth tokens are in common use, Facebook is a good example. OAuth tokens expire based on the expires_in parameter. Which means that a given token would be valid for a short time after the user logs out, which is very low risk issue ...


0

I can't comment yet, so I will post an answer. I can think of two things that they could do: Run a list of bad passwords through their hashes and see how many correspond to their database of password hashes, then count and rank them. Reverse engineer a sample set of their password hashes(why devote too much time to this?) and aggregate data on the brute ...


2

Your first link says what the source is: This list is from files containing stolen passwords posted online during the previous year. In a perfect world this would not happen. Not only would everyone salt and hash their passwords with an expensive algorithm, security would also be good enough that password lists won't get stolen. Unfortunately the world ...


1

While "reputable" websites may do this, there are just as many that do not securely store them and get compromised. Compromised password databases are available, and if you acquire them, you can construct such a list as the one that SplashData has constructed.


1

Robert - I recently was faced with the same issue. Wireshark does not decode SSL over EAP. What you can do is fake Wireshark out and take the entire ssl conversation and build it into a pseudo tcp session with the SSL data from the original eap packets and retransmit the frames. I used Python raw sockets to generate the tcp session and then capture the ...


1

An RSA token might be another option. This requires the user to enter an OTP which is displayed on the RSA token. Works well but is not inexpensive.


1

In addition to sebastians answer you might also consider not using yubicos backend server but to run your own system, so that the authentication request is not forwarded to yubico but handled on your own system or within your own (your customers) subnet. Alas, you need to install/run such a backend system. Yubico themself provide an authentication server but ...


2

To specifically address the scenario, Facebook doesn't need to wait until a user logs in to capture an OAuth token. Since you're trusting Facebook as your authentication provider, they can generate a valid OAuth token for any user in their system anytime they please. Given that, there are three potentially correct answers here. This is not a threat, ...


2

I would then suggest Yubikey ( http://www.yubico.com ). Yubikey is a OTP hardware token that does pretend to be a keyboard (Thus requiring NO extra software installation), and then sends a 128 bit encrypted secret to the server. The tokens are fully programmable by the administrator, and its possible to use the token in a variety of ways. You could either ...


1

The CryptoStick uses the Web Cryptography API to expose a keys to the browser. Its likely that the proposed USB security token product product would use a similar technique. CryptoStick is open source, so it is easy for 3rd parties to verify it's security. The 2-factor authentication that I use regularly is Google Authenticator, which makes it very easy ...


1

You are asking "what's bad about accepting (but not otherwise enabling) get based authentication?" The answer: it's a bad practice that may eventually lead to a vulnerability, but it doesn't directly create a vulnerability. For a vulnerability to exist, it must be exploitable in some way, and it must grant the attacker something they don't already have. In ...


-1

If login form is vulnerable to CSRF (no matter POST or GET), this is unsecure and known type of forgery: "login CSRF" http://en.wikipedia.org/wiki/Cross-site_request_forgery#Forging_login_requests related question: How to protect against login CSRF?


1

So I hope I do not make myself look like a idiot but I will try to help explain this from my understanding of it. I should note, this is not my full time job so please be kind if I have something really off:) These protocols, and I believe eap is a protocol, peap is protected eap, so it is probably the same protocol with additional encryption, are used to ...



Top 50 recent answers are included