Showing posts with label Uncategorized. Show all posts
Showing posts with label Uncategorized. Show all posts

Tuesday, May 10, 2011

Ethical Hacking


Prevent Dll to be decompiled or disassembled

By design .NET embeds rich Meta data inside the executable code using MSIL. Any one can easily decompile or disassemble your DLL using tools like ILDASM (owned by Microsoft) or Reflector for .NET which is a third party.

Secondly there are many third party tools which make this decompiling process a click away. So any one can easily look in to your assemblies and reverse engineer them back in to actual source code and understand your logic which can make it easy to crack your application.
The process by which you can stop this reverse engineering is using “obfuscation”.

It’s a technique which will foil the decompilers. There are many third parties (Dotfuscator, XenoCode, Demeanor for .NET, Crypto Obfuscator, etc…) which provide an obfuscation solution.  When evaluating obfuscators, they are not all equal in quality.   Most do not handle XAML well if at all.  Also, some products are more sophisticated than others with basic obfuscation as well as string encryption.  Cheaper is not always better.

Microsoft includes Dotfuscator Community Edition with Visual Studio.NET but it may not be sophisticated enough for your application.

Cloud Computing – SaaS+PaaS+IaaS+Daas

Trying to understand the complexities of Cloud-based services can be like navigating through a minefield, particularly if you’re an ISV looking to broaden your product offering. With that said, here’s a quick 101 in the basic concepts of cloud services, which should help clear the muddy waters a little.
SaaS – Software-as-a-Service is a model of software deployment whereby a provider licenses an application to customers for use as a service on demand. One example of SaaS is the Salesforce.com CRM application.
IaaS – Infrastructure-as-a-Service is the delivery of computer infrastructure (typically a platform virtualization environment) as a service. Rather than purchasing servers, software, data center space or network equipment, clients instead buy those resources as a fully outsourced service. One such example of this is the Amazon web services.
PaaS – Platform-as a-Service is the delivery of a computing platform and solution stack as a service. It facilitates the deployment of applications without the cost and complexity of buying and managing the underlying hardware and software layers. PaaS provides the facilities required to support the complete lifecycle of building and delivering web applications and services. An example of this would the GoogleApps.
DaaS – Desktop-as-a-Service enables users to use their desktops virtually from anywhere. Commonly known as “Desktop Virtualization”, this concept separates personal computer desktop environments from the physical machine through a client-server computing model. Nowadays, with the rise of SaaS and RIA (Rich Internet Applications) this method of usage is becoming obsolete.
So what does all this mean to you? Well, as a precursor to adopting the Cloud Computing model, you first need to have an application that is “Cloud ready”