New answers tagged

2

Normally, there will be no warning as the certificate is signed by a trusted CA. Wrong. Since the subject of the certificate ( www.randomname.com) does not match the URL (www.google.com) the validation will fail and the browser complain. It does not matter if this is "only" a redirect, i.e. even for the domain you redirect from you need a proper ...


1

As you already noted, there are two ways to exchange symmetric session keys: through key encipherment or through key agreement (which is based on Diffie-Hellman algorithm). Both algorithms are not used at the same time. For example, Microsoft SChannel client reads bits from server certificate's KeyUsages extension (which is a bit string) and depending on ...


0

If all your users know you and are confident in you, you can build your own CA for free. OpenSSL for example offers you all you need for that: you first build a self signed root certificate you optionally use that root certificate to sign an intermediary certificate that you use in following steps or directly use the root you send that certificate to all ...


1

This type of attacks is a legit threat. It can be easily implemented by tools like EvilGrade ( evil upgrade). Many softwares still perform update via HTTP. Example Scenario: Lets say a user has notepad++ installed on his PC.An attacker who has access to internal DNS can perform DNS cache poisoning and use a tool like Evil Grade. To put in simple words, it ...


0

When we talk about security, self-signed and CA signed certificates are providing same 256-bit encryption to your website. But, SSL is not only used for security, but also refer authentication and users trust. Drawbacks of Self-Signed Certificate, Self-signed certificate and signed certificate carry equal encryption strength but beside this encryption, ...


1

For a man in the middle it is easy to tamper with a download. There are even metasploit modules which make it really easy to infect a downloaded executable on the fly. And man in the middle can be easily achieved too, for example by redirecting traffic inside a local network with ARP or DHCP spoofing, by controlling your own local network by creating an ...


0

Root certificates don't need to be revoked if they are not compromised. Obviously it's not possible to just create a CRL as there would not be a trusted private key; instead this is a out-of-order operation. In general it's better to create a new root certificate and let the old one expire. Note that the underlying certificates should have an expiration ...


1

(1) Does the verification of the chain end there or does it continue on until we get to D? it depends on a certificate chaining engine (CCE) implementation. Different platforms have different implementations which may not support all recommended/mandatory validation logic described in RFC5280. Certificate trust requires an end of chain point which is ...


1

Lee Brotherston spoke at DerbyCon 2015 on Stealthier Attacks and Smarter Defending with TLS Fingerprinting -- slides -- video. He also released code to go along with the talk -- https://github.com/LeeBrotherston/tls-fingerprinting/tree/master/fingerprintls The below is taken from his website -- http://blog.squarelemon.com/tls-fingerprinting/ Transport ...


0

1) If the intermediate certificate (B) is trusted - that is, it is a valid signing certificate, not expired, not tampered with, and not revoked - then it being in the trust store is enough that the TLS client doesn't need to continue up the chain in order to verify the leaf certificate. However, that "not tampered with" thing requires having a trusted ...


-2

Every operating system installer packages are signed. In Windows for example, when you download Firefox Installer Stub, you can check it's properties by right-clicking on the exe file and going to "Signature" tab: Then, click on "Details" to see more, you will see "Signer Information" and whatever it's "OK" which is checked with Windows built-in ...


1

The JDK is offered over HTTP because they also offer a hash for you to confirm over secure channels. Since the hash is over a secure channel, if that hash can't be confirmed you shouldn't use the download. The fact that the part of truth(the hash you check against) is delivered securely means they can offer it over HTTP because you will be able to securely ...


0

Firstly, you are right, it is a recursive problem. SSL is sort of a house of cards because you always have to trust something, including the folks that are telling you who to trust. A number of experts have predicted the collapse of SSL: Security Collapse in the HTTPS Market SSL/TLS encryption and the vacant lot scam: Too big to fail How is SSL ...


1

AFAIK, some of them are in countries, where single entity (gov) can covertly do whatever it wants on their machines. Yes, pretty many countries are like that today. Sadly, concerning governments, the CA system is not (and never was) secure. CAs are still good for preventing some people and organisations from attacking, just not all.


0

It validates all of them at the same time. This is called a Distinguished Name.


4

["Facebook" here is just "an example of someone that wants a certificate." There is no inherent special Facebookness about this situation.] Who generated that public key that I can see in facebook certificate? Is it generated by Facebook or that intermediary CA? Facebook generates the "keypair" consisting of a public key and a private key. ...


0

As Steffen Ulrich pointed out, with true end-to-end encryption, it would be impossible for the CDN to get its hands on the content. That is why CDNs in general store the content unencrypted and then it's up to the client to decide whether the content will be served to the user via HTTP or HTTPS. If the customer chooses HTTPS, the CDN then becomes one of the ...


0

HTTPS only is a bad idea if your site hosts public info, especially if that info is dynamically generated by a CMS. It makes ISP Internet caching and reverse proxy (such as squid/varnish) not work and that can lead to overloaded servers and exorbitant bandwidth usage. If you have a limited number of users this isn't a big deal but it will cripple your ...


0

You really need both as the two achieve different things. You achieve secure communications, which protect from interception/injection of data during comms. You achieve confidence the 3rd party is both a trusted 3rd party and the 3rd party you think it is. (or in this case, a 3rd party which is trusted/authorised by the vendor). The 1st one is pretty ...


1

Thomas Pornin's answer is good, but a little outdated. Support for Name Constraints is growing. I've found that OpenSSL 1.0.1k and Windows 7 support the extension. Test Using XCA, I created a self-signed CA certificate, and added a critical Name Constraints extension for .lab.example.com, by adding the following line on the "Advanced" tab during ...


3

It is not possible to "trick" the server, but there are a couple of caveats here. First, it is still possible to set up another site in IIS with a binding that will accept HTTP requests, so you need to be aware of the configuration of any other sites hosted on this server. Second, this configuration means that if people attempt to visit the site ...


2

No - if there is no http binding, IIS will not accept an HTTP request. On 443, it will attempt to negotiate a TLS/SSL (depending on configuration) connection, if it cannot, the connection will fail. https://msdn.microsoft.com/en-us/library/ff720335.aspx Relevant quote : " By enabling SSL in Microsoft® Internet Information Services (IIS) 7.5/7.0, the [...


0

By putting the token in the cookie and setting that cookie HttpOnly, you can prevent access to the cookie by malicious client side script (ie, XSS) - there is no access to an HttpOnly cookie from JavaScript, the browser will protect it and handle sending the cookie only to the right origin. https://www.owasp.org/index.php/HttpOnly


0

Ok, let's start by understanding what's JWT (quoted from their website): JSON Web Tokens are an open, industry standard RFC 7519 method for representing claims securely between two parties. JWT.IO allows you to decode, verify and generate JWT. The goal of JWT isn't to hide data, but to prove your identity to the server. Anyone can decode the ...


1

For instance the procedure never asks you to create a private key, instead they magically create one for you. I know cryptography is magic, but in this case it is also secure... :-) Because when using a Let's Encrypt client the key pair is generated locally on your server and not send to Let's Encrypt servers* - in contrast to some other commercial CAs, ...


1

No because the browser dont change anything in the request when sending it over https (It will only encrypt it additionally). An attack with e.g. XSS will work exactly like it would work with http. https only prevents from another type of attacks like man in the middle reading the session.


0

The browser examines each certificate in the chain that terminates with a self-signed Trusted Root Certificate of the Certification Authority. This would be in the local certificate store. It verifies that the signature is valid, that the current time is within the validity period of each certificate as well as checking the CRL published location (http or ...


2

It depends on a multiple factors, certificate management strategy, policies and so on. For general purpose web applications I would go with a single certificate per machine if they use different names. You can run separate certificates on per-service basis, but this will increase administrative efforts in certificate management. If you go with single ...


3

"Complexity is the enemy of security" I would always look to use the least amount of certs possible for a number of reasons, mostly due to the ease of administration. It's my understanding that letsencrypt is not currently allowing wild card certificates (these certificates essentially allow you to secure all subdomains of a domain where the traditional ...


0

OpenSSL has only three categories of 'cipher' for SSL/TLS (really ciphersuite, and not to be confused with EVP named ciphers used among other things in openssl enc which are quite different): SSLv2 uses the SSL2 encoding (3 bytes) and is usable only in SSLv2 (which of course you shouldn't use at all, and by default is #if'ed out at compile time in recent ...


0

When I try the openssl command you mentioned against another site: openssl s_client -cipher DHE-RSA-AES256-SHA -connect www.verificationlabs.com:443 I see in the results the following which I assume means it applies to both SSLv3 and TLSv1.*: New, TLSv1/SSLv3, Cipher is DHE-RSA-AES256-SHA So this may simply be an issue with the way OpenSSL formats its ...


1

It is an arbitrary, administrative decision for the creator of CA what client certificates they want to enable to be signed by the CA. The policy_match in the following configuration line: policy = policy_match is a chosen name that corresponds to a particular section in the configuration file. That section defines in details each of the [ ...


1

A bit of theory Technically it is possible that single certificate may have multiple chains, however it is not your case. Multiple chains can be produced when cross-certification, when CA server have two or more certificates signed by different issuers and all these certificates are installed in the client's store to build the chain. This situation is ...


8

I did not know about this until I read the link you posted, so do not view this answer as authorative. I would recommend you to take the precautions listed under "Immediate Mitigation" now, until you are completely sure you are not affected. First, how does this vulnerability work? This is a short form of the PHP example explained under "How it works": ...


1

TLS is an end to end encryption which means that the traffic between the client and the server is encrypted and can't be accessed by someone performing a MitM attack for example. This does not protect your server in any way it only protects the data that is transmitted. So yes it can be exploited through http aswell as through https.


3

The sever sends its certificate during the TLS handshake and the client verifies its trust path. In the first step the client matches the common name (CN) field with the server's hostname (it does not compare the certificates). Then the client verifies the trust path, i.e. whether the certificate presented by the server is signed by an entity whose ...


0

HTTPS only is a must. Apple's recent App Transport Security also enforces this and TLS1.2>. As you control both the app and the api, I would implement Certificate Pinning. Certificate Pinning can be defeated but it is a solid deterrent against the casual inspector. You can add another layer with Payload Encryption. That comes at the cost of making sure ...


0

Many sites ignore HTTPS while downloading the content from the mirror site. As we know that Mirror sites are useful when the main site is generating too much traffic and the mirror site helps users quickly in getting the content. If the site uses HTTPS in downloading content then there are few benefits leads to users like The integrity of the content will ...


0

Certificate authority is the one issuing SSL and other digital certificates. It is highly trusted entity who verifies the information provided by web server such as its domain name, public key, the company’s identity. If all the information provided, are legal then the CA will issue the respective SSL certificate duly signed using its private key. Moreover ...


3

To add to @NeilSmithline's answer, TLS (and therefore HTTPS) also includes two features beyond server authentication: encryption (which provides privacy/confidentiality) and integrity (which ensures the data isn't tampered with). Both of these can be very important. For a download site, the relevance of encryption really just comes down to whether or not ...


10

Absolutely there is a point. Properly configured HTTPS includes an authentication check that ensures that the server is the site you intend. More technically, it confirms that the client-specified hostname (ie: what's in the URL bar for your page) match the name on the SSL certificate. Assuming that a site's private key hasn't been stolen, when you ...


5

Subject identification in SSL/TLS server certificate is DNS name(s) usually and/or IP address(es) rarely, which are matched against the requested URL. Neither of these determines location. EV certificates must contain some physical location information verified by the CA, and other certs may, which the browser cannot further check; some browsers display some ...


0

With Caller ID spoofing, you may never know for sure, but reverse lookup comes back to: JAMES SHANE


4

According to the openssl s_client output the server accepts certificates issued by the following CA: Acceptable client certificate CA names /C=US/O=VeriSign...CN=VeriSign Class 1 Public Primary Certification Authority - G3 /C=US/O=VeriSign...CN=VeriSign Class 2 Public Primary Certification Authority - G3 But the client certificate you send has the ...


1

As an addon to Trey's answer: I use the string ALL:COMPLEMENTOFALL when want I every cipher suite. I use the -V (upper case V) option to make OpenSSL output the hex-IDs of the cipher suites. Note: OpenSSL is not authoritative for answering these questions. IANA is. (But I couldn't get their CSV file parsed nicely.) $ ./openssl version OpenSSL 1.1.0-...


0

Is there any way to implement client authentication on the server's side based on the IP / FQDN presented by the client ? Could be done. The REAL client's certificate often doesn't contain any IP/FQDN information. For personal certificates it's usually a name and some identifier, for applications it's usually a system name/application name. Indeed you ...


2

1.) See openssl output below and excellent Wikipedia page below 2.) No not all of them, see the tables at the URL below. 3.) No not all of them, see the tables at the URL below. https://en.wikipedia.org/wiki/Transport_Layer_Security openssl ciphers -v 'ALL:!aNULL' ECDHE-RSA-AES256-GCM-SHA384 TLSv1.2 Kx=ECDH Au=RSA Enc=AESGCM(256) Mac=AEAD ...


0

How you authenticate a peer's certificates in mutual TLS authentication is, strictly speaking, not part of TLS itself, but rather it is part of the application policy. How the application checks for a certificate authenticity, e.g. checking that the peer's FQDN/IP matches what's written in the C(ommon) N(ame) or S(ubject) A(lternative) N(ame) or the O(...


2

Is there any way to implement client authentication on the server's side based on the IP / FQDN presented by the client ? Yes, this can be done. For the server certificate the client verifies not only the certificate chain of the servers certificate but also checks the subject against the hostname of the URL. With client certificates the server should do ...


4

Why do I need to provide curl the full chain instead of only the root CA? In order to build the trust chain the client has to know the intermediate certificate somehow. Usually this is done by sending both the leaf certificate and the intermediate certificate in the TLS handshake but it is a common error in server configuration to send only the leaf ...



Top 50 recent answers are included