information security, the outdoors and me RSS 2.0
# Saturday, October 20, 2007
I have been thinking more about trust and its importance in a computing environment.  Since there are so many ways to erode or remove trust altogether it seems that we need to do more to provide solutions to combat these attacks.

The key benefit with computing technology is that it is so dynamic.  This capability enables us to change anything in a nanosecond.  This is also a huge risk.  What would happen if you removed the element of change from a computing environment?  Would it cease to have value?  I think not.  I think that the recent surge of CD bootable OS images and virtualized images are merely one phase of this trust recovery process.  The next phase is creating "write-once" environments that cannot be modified by API.  Simply revoke ALL write API access to the disk.  Force all activity to occur in memory.  This of course has constraints, but systems are more powerful everyday.  Its only a few years away that we will have many GB's of memory in systems as a low end standard.

A write-once OS would improve the trust level it provides by preventing any changes to it on the fly.  The concern of course is that all of its flaws are persistent as well.  oh well, mankind has yet to make a perfect piece of software.  I guess we'll have to live with that human flaw.  A write-once OS should be as locked down as possible of course to reduce its attack surface area.  Of course data storage will need to happen elsewhere.  And session persistence is not a trustworthy goal as the session data needs to be stored elsewhere and could have been polluted/infected.

Now this is an area Linux could easily excel in.  The write-once OS.  This would need to be refreshed/recompiled (possible by the user as well) so any vulnerabilities or features can be released.  Sure, you need to download a 10-20GB image, but at least once you securly load it, you won't have any questions.

Perhaps its even possible to convert the concept to hardware - the hardware linux OS.  Not only is it not modifiable, but you never have to doubt it - ever.  This is merely a thought, I've no experience in OS design, but I suspect this is possible, just by forking linux.

Saturday, October 20, 2007 12:56:38 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] -
tech
# Thursday, October 18, 2007

This month I received my CISSP certification after passing the test last month!


    

Thursday, October 18, 2007 5:30:48 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] -

# Monday, September 03, 2007

So, I've been holding off my migration to Community Server 2.1 since I really don't want to deal with the differences yet.  Lo and behold...there is BlogEngine.NET!

Essentially looks like a simple blog engine good for replacing DasBlog.  I'm checking this out as my replacement, making sure I can migrate content over and that'll be that for DasBlog I think.
Monday, September 03, 2007 5:04:45 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] -

# Monday, August 20, 2007

I got to go to LA for CISSP training.  It was nice although I didn't get to explore much.  Deckard would be proud...

A nice shot of the Bradbury Building:





Monday, August 20, 2007 7:49:53 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] -
Fun | tech
# Tuesday, July 17, 2007

I have passed my CompTIA Security+ exam and I'm now Security+ and MCSA:Security 2003 certified!

 

 

 

Tuesday, July 17, 2007 5:59:22 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] -
tech
# Thursday, February 08, 2007

    I have setup CS 2.1 for my new blog content at http://ydns.no-ip.com/cs/blogs/ydns/default.aspx.  Probably gonna abandon DasBlog as it is infrequently updated and lacks the feature set of Community Server.

Thursday, February 08, 2007 9:15:42 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] -
tech
# Friday, January 26, 2007

Trust is an reliance on the integrity or nature of a entity.  It does not protect you.  Just assures you of its virtue of topic.  So, you can have trust of identity, trust of intent, trust of protecting your credit card number, etc.

Validation is what is used to determine the state of trust.

Website use SSL certificates to provide a level of security for users.  The nature of those certificates is built upon a "chain of trust" that emanates from their root certificate, held by some other entity usually.  So the reason you don't need to fear someone seeing your email on gmail is not that it has been encrypted per say, but that the only entity that can see that traffic is actually Google.  If Google sold their SSL certificates private key, they would risk exposing everyone's email to that buyer.  Hmm...quite a lucrative market there I bet.  :)

 Trust is a odd thing.  If you have to prove it did you have any to begin with?  So why call it trust, why not call it something else like Validated Identity Recognition - "I see that certificate and I have determined it to be proof of your identity so lets talk in private now".  You have essentially validated Google's identity in the example above, not placed trust in them.  Hey, they may not have a clue how to protect their servers or customers.

So why mention this distinction?  Well it seems that there is one current problem with open source - a lack of trust.  I don't play with guns because I don't trust them in the situations I would place them in; Leaving them unsecured for hours a day, etc. Trust isn't the only thing encouraging someone to buy a product though.  There are lots of reasons.  But I suspect companies see things differently.  Users (and companies) don't trust this stuff just because they could take a look at its code.  Most users have no clue how to review code.  They also have no reason to trust something based on its existence.  That's like trusting a bomb because you see it.  Exactly not what you would do.

So the point I'm making here is that somehow it becomes important to increase the amount of trust related to open source projects.  It therefore becomes necessary to give "outsiders" a standard method of accepting (or refuting) the measure of trust of a open source project.

So why not start creating a trust based solution for open source projects.  A way of saying "I've reviewed the project or part of it and I can validate it does what it is supposed to".  Repeated hundreds of times for a project and you can begin to see how "supporters" and developers" begin to assign levels of trust to specific people.  I trust ProjectX so therefore I trust developer John.  Or vice-versa.

Using things like certificates as a identity placeholder, you can associate Trust Points in some public manner that enforces the notion of trust in open source projects.  So as you gain Trust Points in general you may be generally more accepted regarding your input to a project.  This is kind of like the forum policing that moderators (and user) perform, but in reverse.  Don't focus on tearing a person down.  Instead focus on building up trust.  Those that continue to fail in that regard will not achieve much trust.  The same for projects.

I can see modules being implemented similar to blogs posts using Captcha, but signing with a public cert.  Since you can only sign once, re-signing is irrelevant and easily blockable.  Getting around the system becomes difficult and only coersion is a concern.  So could you either convince or force others to sign?  Of course.  That is certainly a risk here, but no more then other repudiation systems.  You could be notified and have the ability to renounce a signing (with limited options) and an impact on your Trust Status.

I think this idea of Project Trust has merit and could even be implemented in companies on a much smaller scale for internal projects.  More or less rated on their quality of work rather than the trust that they aren't putting backdoors in, but both are still relevant.

So validate the code, then trust the code.

Friday, January 26, 2007 4:34:52 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] -
tech
# Saturday, January 20, 2007

What will come in the future for Information Security?  Here is a list of things I see clearly becoming relevant in the next 20 years.

  1. Standardized definition of a file - An ISO (universal) standard defining a "file".  this standard will allow for more robust security measures such as signatures, thumbprints, reliable timestamps, content validation, etc.  Making a file more into a container with approved slots for required features.  This will place more integrity in the files.  A previous post I made about secret sharing can be combined with this to appease any Board of Directors.
  2. Full auditing computer systems - A computer designed to fully audit every single change to it for providing a reliable audit trail.  This will require isolated logging features, likely open source analysis, and an insane amount of storage space, memory and features.
  3. Multi-factor authentication - Two ain't enough. Eight may be.  See next entry.
  4. Split secrets - The old missile launch key solution to major risks will become more pervasive in corporate environments where data security is mandated.  An erosion of trust masked in a technological solution will be quickly accepted by management.
  5. Templatized security code analysis - This is already found in limited capabilities at some large companies.  But the days of 300Kb exe's is going the way of the dodo.  Imagine MBs of security code to protect the actual code.  Writing a C++ app for the government? You need to implement at least one of 3 possible security enhanced services within your code or no acceptance.  This will protect from all known exploits for a language and provide the intense logic analysis needed to actually do its job.  I imagine protected updates will be mandatory.  Think TPM here.
  6. Restrictive Operating Systems - So locked down, you may be able to revert to a mainframe concept and reduce usage to specific commands and applications options.  Corporate users will cry today, but thank us later, when millions of social security numbers, credit card numbers are actually abused in a vast breach.  All those unknowing employees fired/jailed without a thought by their companies to protect their investors.  Then not being able to run Solitaire will bring a sigh of relief to the worker bee who fears some strange program from ruining their career.
  7. Big Brother - Think you have someone watching your every move today?  Ha!  Its nothing like will be present in 20 years.  Mandatory recording, tracking, home auditing will all be part of getting a job in the future.  Remember Back to the Future 2, they'll watch every transaction you perform at home as well and be able to act instantly on it.  All because you'll want a job that pays well.  Cheap jobs will still be generally unmonitored.  Homeland Security will push for this program design, you'll see.
  8. Open source - After years of struggling with acceptance open source solutions will go critical as technology provides some of the solutions above.  Once code security is modularized, implementing secure open source solutions raises their trust factor significantly.  I imagine modularized solutions for code performance and feature provisioning will also occur reducing the effort in producing well built open source solutions that don't require a degree to use.  Most open sources apps today have a handful of active developers and likely numerous hackers attacking the published code, with opposite goals.  The changes mentioned will make hacking much more difficult at the code level.
Saturday, January 20, 2007 2:16:40 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] -
tech
Categories
Archive
<January 2008>
SunMonTueWedThuFriSat
303112345
6789101112
13141516171819
20212223242526
272829303112
3456789
Blogroll
About the author/Disclaimer

Disclaimer
The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.

© Copyright 2009
ydns
Sign In
Statistics
Total Posts: 68
This Year: 1
This Month: 0
This Week: 0
Comments: 3
Themes
Pick a theme:
All Content © 2009, ydns
DasBlog theme 'Business' created by Christoph De Baene (delarou)