 |


Cisco Secure Desktop

The Cisco Secure Desktop solves the problem of securing the client end machine
before it is given access to a company's Intranet. It does this in two ways.
First through the enforcement of company system policies through System Detection.
System Detection scans the end clients' machine verifying that system policies are meet on
the end machine. These policies include minimal Operating System requirements, updated
AntiVirus software, or requirements for a Personal Firewall. If the System Detection scan
meets company policy as configured by the Administrator then the client is given access.
The second side to the Secure Desktop is the Cache Cleaner and the Secure Space. These
secure the end client to handle sensitive information that is accessible on the company's
Intranet. The Cache Cleaner runs at the end of the session removing cookies, cached files,
and history created during the session. The Secure Space creates a virtual desktop within
the guest's desktop. All disk writes within this virtual desktop are written in an encrypted
format, a separate virtual registry is maintained, as well as an overlaid limited file system.
This entire virtual desktop is wiped clean after the session, removing any trace of confidential
documents that the user might have manipulated during their session. I worked on integrating
the Cisco Secure Desktop into Cisco's SSL VPN Concentrator and worked on making the
Cisco Secure Desktop's functionality more robust.
- Client Installation The Cisco Secure Desktop is installed through the clients
browser using a number of different methods depending on the client's Operating System and
the users privileges. The installation methods include ActiveX, Java (Sun JVM and Microsoft JVM),
and Windows EXE. I worked on making sure that the installation worked properly on a myriad of
browsers and operating systems. I also developed a virtual RAM disk on the VPN Concentrator to
accelerate the downloading of the many components (Files serve much faster from memory than
from flash storage).
- Management Interface I integrated the web-based administration console into the
Concentrators existing console. I also expanded the management interface to support a number
of new features related specifically to the Secure Desktops interaction with the VPN Concentrator
- Package Upgrade I developed a special package installation process to allow the
Cisco Secure Desktop to be upgraded independently of the VPN Concentrator image without the
need for restarting the system. A new package could be uploaded through the management web interface.
The package consisted of a ZIP/JAR like archival format that would be stored in flash memory, but
which would be extracted into a virtual RAM based file system for efficiency and to reduce the reads
and writes made to flash memory.
- System Detection I redesigned and reimplemented System Detection from scratch. Moving
the code from a linear design that was hard to expand to an Object Oriented design that encapsulated
the different AntiVirus, Personal Firewall Utilities, and Operating Systems into separate classes.
This allowed the identification of new utilities to be as easy as constructing a new object using
the Clue objects that specified how to extract the appropriate system information. This scan information
is later processed through the VPNPolicy and Criteria objects to grant or deny access to specific
features.
Array SP

The Array SP (Secure Proxy) is a network appliance that sits on the edge of a
company's Intranet and allows users to securely connect to the Intranet from
remote locations in the Internet through a secure SSL connection. This product
allows companies to expand their network and offer use of internal applications
from anywhere without the cost of expensive hardware. It is often referred to as
painless VPN, because it offers the features of a VPN without the setup of costly
hardware (Resources can be accessed through any SSL capable web browser). I've
worked on the following SP features:
- WRM Web Resource Mapping is the technology used to map all the internal
servers into the address space of the SP, this requires pages to be rewritten
dynamically to map them to the Array SP's hostname, this includes rewrite of
(HTML, JavaScript, and Flash)
- Fileshare Gives the user a simple web interface to upload, delete, rename,
move, and view file systems in the internal network including CIFS (Microsoft)
and NFS (Unix)
- Client Security Secures the users machine that is accessing the SP either
by loading a "Virtual Secure Desktop" that encrypts all information written to
disk or touched during their session, which is then wiped clean after their session,
or installing "Cache Cleaner" an application the erases all Cookies, Passwords,
and History or a session after it is finished, or "Host Integrity", which verifies
that the user's computer has a personal firewall installed and is running a updated
version of a virus scanning software.
All these projects have increased and exercised my understanding of Unix, Windows,
IE, C, C++, HTML, HTTP, JavaScript, Perl, PHP, NFS, CIFS, Samba, and Apache.
Array SR

The Array SR (Secure Reconacense) is a network appliance designed to sniffs
and record network traffic. When I started working at ArrayNetworks the SR
was in its infancy stages. I was quickly made the lead developer of the project
and told that a prototype would be needed for a tradeshow in Europe within
the coming weeks. I worked hard turning a bunch of loosely connected code into
a reasonably presentable product. I continued to work on the project taking
it form a simple device that could only identify image files form the byte
patterns or their headers, to a product that would analyze and dissect the
HTTP protocol, to a device that supported SMTP (e-mail), to one that also
handled instant messaging (AIM & Yahoo IM). The User would log in to the box,
view thumbnails of all the images seen over the network, they could view
reconstructed HTML pages exactly as they were seen by the user, and view
e-mail send my users. This recorded information could easily be browsed,
searched and reports could be generated on traffic patterns and network use.
This was an exciting project to develop, but sadly due to a change in company
direction and a lack of resources the project was discontinued.
|