Monday, January 25. 2010Apple's New iTabletThere's a bit of buzz surrounding Apple's press event on Wednesday. Much of the speculation seems to be that Apple will be announcing their tablet product. However, it seems that Fredo & Pid'jin have uncovered the real announcement.. Thursday, January 14. 2010Web SecurityPeople use the web today for just about anything. We get our news from news sites and blogs, we play games, we view pictures, etc. Most of these activities are fairly innocuous and don't require much in the way of security, beyond typical anti-viral and anti-spyware security. However, there are activities we engage in on the web where we want to keep our information private and secure. For instance, when we interact with our bank, we'd like to keep those transactions private. The same goes for other activities such as stock transfers and shopping. And it's not enough to merely keep it private, we also want to ensure that no one can inject anything into our sessions. Online banking wouldn't be very useful if someone could inject phantom transfers into your session, draining your bank account. Likewise, having someone inject additional items into your order, or changing the delivery address, wouldn't be very helpful. Fortunately, Netscape developed a protocol to handle browser to server security called Secure Sockets Layer, or SSL. SSL was first released to the public in 1995 and updated a year later after several security flaws were uncovered. In 1999, SSL became TLS, Transport Layer Security. TLS has been updated twice since it's inception and currently stands at version 1.2. The purpose of SSL/TLS is pretty simple and straightforward, though the implementation details are enough to give anyone a headache. In short, when you connect to a remote site with your browser, the browser and web server negotiate a secure connection. Once established, everything you send back and forth is first encrypted locally and decrypted on the server end. Only the endpoints have the information required to both encrypt and decrypt, so the communication remains secure. What about man-in-the-middle attacks? What if you were able to insert yourself between the browser and the server and then pass the messages back and forth. The browser would negotiate with you, and then you'd negotiate with the server. This way, you would have unencrypted access to the bits before you passed them on. That would work, wouldn't it? Well, yes. Sort of. If the end-user allowed it or was tricked into allowing it. When a secure connection is negotiated between a browser and server, the server presents the user with a certificate. The certificate identifies the server to the browser. While anyone can create a certificate, certificates can be signed by others to "prove" their authenticity. When the server is set up, the administrator requests a certificate from a well-known third party and uses that certificate to identify the server. When the browser receives the certificate, it can verify that the certificate is authentic by contacting the certificate signer and asking. If the certificate is not authentic, expired, or was not signed by a well known third party, the user is presented with an error dialog explaining the problem. Unfortunately, the dialog presented isn't always helpful and typically requires some knowledge of SSL/TLS to understand. Most browser vendors have "corrected" this by placing lots of red text, exclamation marks, and other graphics to indicate that something bad has happened. The problem here is that these messages are intended to be warnings. There are instances where certificates not signed by third parties are completely acceptable. In fact, it's possible for you, as a user, to put together a valid certificate signing system that will provide users the exact same protections a third-party certificate provide. I'll post a how-to a little later on the exact process. You can also use a self-signed certificate, one that has no root, and still provide the same level of encryption. So if we can provide the same protection using our own signed or self-signed certificates, then why pay a third party to sign certificates for us? Well, there are a couple of reasons, though they've somewhat faded with time. First and foremost, the major third-party signers have their root certificates, used for validation, added to all of the major web browsers. In other words, you don't need to install these certificates, they're already there. And since most users don't know how SSL works, let alone how to install a certificate, this makes third-party certificates very appealing. This is the one feature of third-party certificates that still makes sense. Another reason is that your information is validated by the third-party provider. Or, at least, that's how it used to be. Perhaps some providers still do, but since there is no standard across the board, SSL certificates as a de-facto identity check are broken. Some providers offer differing levels of validation for normal certificates, but there are no indicators within the browser to identify the level of validation. As a result, determining whether to trust a site or not falls completely on the shoulders of the user. In response to this, an organization called the Certificate Authority/Browser Forum was created. This forum developed a set of guidelines that providers must adhere to in order to issue a new type of certificate, the Extended Validation, or EV, certificate. Audits are performed on an annual basis to ensure that providers continue to adhere to the guidelines. The end result is a certificate with special properties. When a browser visits a site that uses an EV certificate, the URL bar, or part of the URL bar turns green and displays the name of the company that owns the certificate. The purpose is to allow users a quick glance check to validate a site. To a certain degree, I agree that these certificates provide a slight enhancement of security. However, I think this is more security theater than actual security. At its core, an EV certificate offers no better security than that of a self-signed certificate. The "value" lies in the vetting process a site has to go through in order to obtain such a certificate. It also relies on users being trained to recognize the green bar. Unfortunately, most of the training I've seen in this regard seem to teach the user that seeing a green URL bar instantly means they can trust the site with no further checking. I feel this is absolutely the wrong message to send. Users should be taught to verify website addresses as well as verifying SSL credentials. Keeping our information private and secure goes way beyond the conversation between the browser and the server, however. Both before information is sent, and after it is received, it is available in some plain text format. If an attacker can infiltrate either end of the conversation, they can potentially retrieve this information. At the user's end, security software such as an anti-virus, anti-spyware, and firewall, can be installed to protect the user. However, the user has absolutely no control over the server end. To the user, the server is a mystery. The users trusts the administrator to keep their information safe and secure, but has no way of determining whether or not it is. Servers are protected much in the same way a user's computer is. Firewalls are typically the main defense against intruders, though server firewalls are typically more advanced than those used on end-user computers. Data on the server can be stored using encryption, so even if a server is compromised, the data cannot be accessed. Security on the Internet is a full-time job, both for the end user as well as the server administrator. Properly done, however, our data can be kept secure and private. All it takes is some due diligence and a little education. Friday, December 25. 2009Merry Christmas
The holiday season is upon us once again. Merry Christmas to you and yours and Happy Holidays.
Thursday, December 10. 2009Tis The Season......to be charitable. Christmas is right around the corner, only a few weeks away! Time really flies. So, if you're wondering what to get me for Christmas, look no further! I'll tell you. That's all. Seriously! That's it. Child's Play is a charity started by the guys from Penny Arcade. Not content with the bad rap that gamers tend to get, they set out to prove that not all gamers are bad. To that end, they have created a charity that has been growing every year. Money donated to Child's Play is used to purchase games, toys, movies, and more for sick children located at hospitals in the US, Canada, and Europe. Christmas for these kids can be a bit light given the cost of medical care and the strain on their families. Here, Gabe from Penny Arcade can explain it better:
That post originally appeared back in 2003 and more information about the start of Child's Play can be found on their About page. So that's it. That's all I want. Show these kids that even in the darkest of times, there is a ray of hope. Give them the gift of fun and distraction. You'll be happy you did. Friday, December 4. 2009"Educate to Innovate"About 2 weeks ago, the President gave a speech about a new program called "Educate to Innovate." The program aims to improve education in the categories of Science, Technology, Engineering, and Mathematics, or STEM. At the end of his speech, students from Oakton High School demonstrate their "Cougar Cannon," a robot designed to scoop up and throw "moon rocks." A video of the speech, and the demonstration, is below.
I was invited back to the school by my former electronics teacher a few years after I graduated. The electronics program had expanded somewhat and they were involved in a program called FIRST Robotics, developed by Dean Kamen. Unfortunately, I had moved out of the area, so my involvement was extremely limited, but I did enjoy working with the students. The FIRST program is an excellent way to engage competitiveness along with education. Adults get to assist the students with the building and programming of the robot, guiding them along the process. Some of the design work was simply outstanding, and solutions to problems were truly intuitive. One of the first "Educate to Innovate" projects is called "National Lab Day." National Lab Day is a program designed to bring students, educators, and volunteers together to learn and have fun. Local communities, called "hubs," are encouraged to meet regularly throughout the year. Each year, communities will gather to show off what they have learned and created. Labs range from computer science to biology, geology to physics, and more. In short, this sounds like an exciting project, one that I have signed up for as a volunteer. I'm excited to see education become a priority once again. Seeing what my children learn in school is very disappointing at times. Sure, they're younger and I know that basic skills are necessary, but it seems they are learning at a much slower pace than when I was in school. I don't want to see them struggle later in life because they didn't get the education they need and deserve. I encourage you to help out where you can, volunteer for National Lab Day, or find another educational program you can participate in. Never stop learning!
(Page 1 of 38, totaling 189 entries)
» next page
|
Calendar
Momentary Wisdom"You cannot see what I see because you see what you see. You cannot know what I know because you know what you know. What I see and what I know cannot be added to what you see and what you know because they are not of the same kind. Neither can it replace what you see and what you know because that would be to replace you yourself"
LinksCurrently Reading...TagsSyndicate This Blog |
||||||||||||||||||||||||||||||||||||||||||




