List Info

Thread: Why Novell should take on the 'type-safe platform' challenge




Why Novell should take on the 'type-safe platform' challenge
user name
2006-05-10 00:23:57
Dinis Cruz wrote:

 > The ones that I wish were listening are Novell and the
Mono project.
 > The path to a type-safe platform could start there.

Following this comment made on the previous thread, here are
the reasons 
why I wished Novell and the Mono project where listening to
that 
conversation (note: an edited version of this post was sent
directly to 
several Novell contacts who asked me 'What is it you wish
we would 
listen to?' :

---------------------------------

Dear Novell

What I meant by my comment, is that there is an opportunity
today (2006) 
for somebody (namely a company + community) to really grab
the 
'type-safe' + 'sandboxing' flag and run with it.

Here is a quick analysis of where we stand today:

    - Vista failed to deliver a OS based on a type-safe
platform
    - 99% (or close) of the .Net Framework and Java code is
executed in 
an environment with no sandbox (i.e. executed: a) in Full
Trust, or b) 
with the Security manager disabled, or c) with no
verification). Given 
the amount of code deployed out there, there is no chance
that a real 
change will occur any time soon. Currently there is no
interest from 
Microsoft or Sun to address this issue and invest the time,
energy and 
resources required to solve it.
    - Microsoft failed to make the paradigm shift from Full
Trust to 
Partial Trust when they released v2.0 of the .Net Framework
(which would 
had been the perfect time to do it)
    - There is good grass roots support for type-safety
    - There is a growing need to create secure and
trustworthy 
applications (with growing support from Governments, Large
Corporations 
and ultimately the end users)
    - Sandboxing at the OS level, like the one in Vista's
'Integrity 
Level / Privilege Isolation' and in Suse's AppArmour
(sorry Crispin for 
not replying to your posts on the previous SC discussion
about 
Sandboxing (it is on my to-do-list)) will NOT prevent
exploitation of 
the user's assets (like for example the user's email).
These techniques 
are designed to 'control' and 'Sandbox' unmanaged code,
which is 
something that I don't believe can be done today. A short
term solution 
(before we get to type-safe OS) would be to have
environments like these 
(which do add some security protection to the OS) supported
by a 
managed/verifiable environment responsible for executing the

managed/verifiable  (potentially malicious) code.
    - Apple has an amazing OS (which I am using at the
moment) but 
doesn't seem to be focused on type-safe / sandboxing issues
too. Apple 
also seems to (like most of the Open Source community) think
that it is 
immune to security vulnerabilities (just look at the way
they handle 
security patches at the moment)
    - Novell has gained a huge amount of respect for its
support for the 
Mono-Project and for its support for Open Source
    - Basically, Microsoft has lost the plot on Security and
(as Gary 
McGraw says) is too focused on bugs and not on architecture.
They 
(Microsoft) will have tough times ahead when Vista proves to
be as 
secure as XP SP2 was.
    - IBM has seen the future and is re-organizing itself
around the 
concept of 'delivering enterprise solutions on top of Open
Systems and 
Open Architectures'

So, like I said above, there is a big opportunity for an
Open Source 
project, lead by a major company and based on a solid
platform, to lead 
the way in the move from unmanaged/unsafe code (where I am
including 
Full Trust .Net code in this category) to managed,
verifiable and 
type-safe code (which can be safely executed in Sandboxes
and malicious 
activity easily detected / mitigated)

Novell and Mono fits this bill perfectly.

And it would also give mono an unique point of sell, since
at the moment 
it is still a 'pour cousin of the .Net Framework'.

Ultimately the goal would be to build an OS on of top of a
type-safe 
platform. But before that the user-land world needs to be
conquered.

A lot of research and effort must be placed on how to create
powerful, 
feature-rich and fast GUI applications built on type-safe
code. This is 
something that can only be done by a large community focused
on a 
powerful goal: *creating secure applications for execution
on 
secure/sandboxed environments.*

Imagine if this idea could be developed to such a state
where (on 
Windows) it would be safer to execute C# applications on
Mono than on 
the .Net Framework itself! (another area where mono could do
really well 
is in Hosting of Asp.Net applications (for example based on
a Linux 
distribution of a LAMM environment, hosted by a
VirtualServer or VMware 
host))

I believe that we are watching today the limitations, of
both Open 
Source world (with its 'many eyeballs') and Proprietary
Code (with its 
Secure Development Lifecycle) to create code that doesn't
contain 
critical security vulnerabilities (i.e. both can't do it
(with maybe 
some notable exceptions)).

What is needed is a new paradigm (well not that new if you
ask Gary 
McGraw) that *creates a financial-model that rewards the
companies that 
are able to create secure applications that can be executed
on secure 
environments *(the idea is not to prevent
bugs/vulnerabilities from 
existing, but to prevent the damage caused by their
exploitation).

Ultimately all source-code will have to be released and made
public (not 
necessarily on an Open Source format, but at least available
to peer 
review and external (i.e. independent) analysis) , and again
here Novell 
and the other Open Source development companies have an
advantage.

The other major asset which the Open Source distributions
have (and one 
which will be crucial in the future) is the centralized
distribution of 
Software (i.e. packages). In the future we will need
entities that 
certify the security of Software applications, which in an 
unmanaged-code world (for example: C++ & Full Trust .Net
) is almost 
impossible to do (i.e. say for sure that Application XYZ
does not 
contain a keyboard hook and direct access to the Internet),
but quite 
possible in a managed, type-safe and verifiable world.

Of course that more CLRs (with custom GC, Security managers,
Class 
loaders, verifiers, etc...) will need to be build, since the

requirements of a powerful Windows Application, are very
different from 
an Asp.Net Form, which are very different from a Device
Driver.

Looking forward to your comments,

Best regards,

Dinis Cruz
Owasp .Net Project
www.owasp.net



------------------------------------------------------------
-------------
Sponsored by: Watchfire

Methodologies & Tools for Web Application Security
Assessment
With the rapid rise in the number and types of security
threats, web 
application security assessments should be considered a
crucial phase in 
the development of any web application. What methodology
should be 
followed? What tools can accelerate the assessment process? 
Download this whitepaper today!

https://www.watchfire.com/securearea/whi
tepapers.aspx?id=701300000007t9h
------------------------------------------------------------
--------------

[1]

about | contact  Other archives ( Real Estate discussion Medical topics )