| keep on working...'s profileApplication Security Are...PhotosBlogLists | Help |
|
January 23 X509 specifications for those who need the low level info.You might will be interest to read this RFC if you need to develop applications that need to handle encryption. for an example if you have a legacy system (e.g. MF) and you need to write your own low level procedures to handle encryption then
this RFC is for you.(RFC2527)
January 18 Using X509 certificate with .NET web serviceshere is a good blog post of how to use the winhttpcertcfg.exe utility to attach x509 certificate to the working process.
you need to use this tool when you want to use SSL v3. without any client (user)
check it out here:
and here:
WSE can done this mapping automaticly, check it out here:
January 14 How to: Check the identity of the caller componentThis code sample demonstrate how to check the identity of the caller at the component level, this method can be used to be sure that only the BL layer calling to the DAL.
// // Class library example to demonstrate StrongNameIdentityPermission and // StrongNameIdentityPermissionAttribute. using System; using System.Security.Permissions; using System.Reflection; //[assembly: AssemblyVersion("1.0.*")] //[assembly :AssemblyKeyFile(@"c:\mykey.snk")] namespace SignedLib { public class Signed
{ // Read the windir environment variable. public void GetWindirImperative() { try { // Use Sn.exe to generate the byte array for the public key. byte[] b1 = { 0, 36, 0, 0, 4, 128, 0, 0, 148, 0, 0, 0, 6, 2, 0, 0, 0, 36, 0, 0, 82, 83, 65, 49, 0, 4, 0, 0, 1, 0, 1, 0, 237, 146, 145, 51, 34, 97, 123, 196, 90, 174, 41, 170, 173, 221, 41, 193, 175, 39, 7, 151, 178, 0, 230, 152, 218, 8, 206, 206, 170, 84, 111, 145, 26, 208, 158, 240, 246, 219, 228, 34, 31, 163, 11, 130, 16, 199, 111, 224, 4, 112, 46, 84, 0, 104, 229, 38, 39, 63, 53, 189, 0, 157, 32, 38, 34, 109, 0, 171, 114, 244, 34, 59, 9, 232, 150, 192, 247, 175, 104, 143, 171, 42, 219, 66, 66, 194, 191, 218, 121, 59, 92, 42, 37, 158, 13, 108, 210, 189, 9, 203, 204, 32, 48, 91, 212, 101, 193, 19, 227, 107, 25, 133, 70, 2, 220, 83, 206, 71, 102, 245, 104, 252, 87, 109, 190, 56, 34, 180 }; // Specify the version of the calling assembly.
Version v1 = new Version("1.0.0.0"); StrongNamePublicKeyBlob blob = new StrongNamePublicKeyBlob(b1); Console.WriteLine(ComparePublicKeys() ? "Calling assembly has same key as this assembly " : "Calling assembly has different key than this assembly"); // Create different permissions to exercise the set operations. StrongNameIdentityPermission snPerm = new StrongNameIdentityPermission(blob, "StrongNamedExe", v1); snPerm.Demand(); // Return the location of the Windows directory that is found in // the windir environment variable. Console.WriteLine(Environment.GetEnvironmentVariable("windir")); } catch (Exception e) { Console.WriteLine("Exception thrown in called assembly: " + e.Message); } } // Use an attribute to demand that the calling assembly has a specific strong name key. // Use Sn.exe to generate the public key string used for the demand. [StrongNameIdentityPermissionAttribute(SecurityAction.Demand, PublicKey = "0024000004800000940000000602000000240000525341310004000001000100ed92913322617b" + "c45aae29aaaddd29c1af270797b200e698da08ceceaa546f911ad09ef0f6dbe4221fa30b8210c7" + "6fe004702e540068e526273f35bd009d2026226d00ab72f4223b09e896c0f7af688fab2adb4242" + "c2bfda793b5c2a259e0d6cd2bd09cbcc20305bd465c113e36b19854602dc53ce4766f568fc576d" + "be3822b4")] public void GetWindirDeclarative() { try { // Return the location of the Windows directory that is found in // the windir environment variable. Console.WriteLine(Environment.GetEnvironmentVariable("windir")); } catch (Exception e) { Console.WriteLine("Exception thrown in called assembly: " + e.Message); } } public static bool ComparePublicKeys() { try { Assembly callingAssembly; // Create a target object.
Int32 integer1 = new Int32(); Type type1; // Set the Type instance to the target class type.
type1 = integer1.GetType(); // Create an instance of the assembly class to house the Integer type.
callingAssembly = Assembly.GetAssembly(integer1.GetType()); // Display the name of the calling assembly.
Assembly entryAssembly = Assembly.GetEntryAssembly(); string mainAssembly = entryAssembly.FullName; Console.WriteLine("Calling assembly = " + entryAssembly.FullName);
// Get the name of the assembly being called (this assembly).
string thisAssembly = Assembly.GetCallingAssembly().FullName; Console.WriteLine("Called assembly=" + thisAssembly);
int tokenIndex1 = thisAssembly.LastIndexOf("PublicKeyToken");
int tokenIndex2 = mainAssembly.LastIndexOf("PublicKeyToken"); string testString1 = thisAssembly.Substring(tokenIndex1, 31); string testString2 = mainAssembly.Substring(tokenIndex2, 31); return testString1.Equals(testString2);
} catch { // Console.WriteLine("This is an unexpected exception"); throw; } } } } January 04 deep dive into impersonationASP.NET 2.0 Security Reference Implementationhere is a good reference for implementing security best practices on your application.
you can find it here December 25 playing with security contexthttp://www.leastprivilege.com/ASPNETExtensibilityCodeAndSecurityContext.aspx December 24 Ajax Security
first you can download free ajaxs library from http://ajax.asp.net/Default.aspx there is a good tool to look for Ajax vaulnerabilities called Sprajax, you can find all the sources at the OWASP project at: http://www.owasp.org/index.php/Category:OWASP_Sprajax_Project
Sprajax README IntroductionSprajax is an open-source tool for assessing the security of AJAX-enabled web applications. Sprajax-specific code has been released under the GNU Lesser GPL (LGPL). Code for supporting libraries (C# spider and Dynamic WebServices Library) is released under the licenses outlined in their source code directories. Code from other projects is used pursuant to their licenses and is used without the endorsement of the original authors.
For more information about sprajax, please check out the official sprajax page: http://www.denimgroup.com/sprajax/
Also, I talk about sprajax issues pretty frequently on the Denim Group blog: http://denimgroup.typepad.com/ ContentsThe sprajax deployment package contains code and binaries for the sprajax tool, supporting libraries, as well as an example Microsoft Atlas AJAX-enabled application. README.docThis document. DenimGroup.Sprajax FolderThis contains the main sprajax Visual Studio .NET solution. The database projects contained need to be installed into a SQL Server 2005 database and the connection string can be entered on the main sprajax screen. DenimGroup.Sprajax.DemoSiteThis contains a demonstration Microsoft Atlast AJAX-enabled web application that helps to illustrate the capabilities of the Sprajax tool. cssspider FolderThis contains the source and binaries for the modified C# Spider adapted from the work of Jeff Heaton (www.jeffheaton.com). This spider code is the basis for the footprinting functionality in sprajax. DWSL1.5_DotNET20 FolderThis contains the source and binaries for the modified Dynamic Web Services Library adapted from the work of Christian Weyer of Thinktecture (www.thinktecture.com). This web services code is the basis for the calls made to web services when fuzzing Microsoft Atlas AJAX applications. DenimGroup.Sprajax.GWT.DemoSiteThis contains a prototype Google Web Toolkit (GWT) application, but this is not finished and GWT support is still not operational. Getting Started
Known Issues
Email dan@denimgroup.com with patches, suggestions or questions. September 27 Microsoft Releases CodePlex - Join the CommunityCodePlex is an online collaborative software development portal for community-oriented projects. Create new projects to share with developers around the world, join existing projects, or use the applications on this site and provide feedback
looking up for a user in multiple domain environmentIf you are using a web site and using windows integrated authentication then the best way to look up the active directory record of a user is with their SID. read more here windows vista security for developers
|
Visual Studio 2005 Security Features and Tools
Visual Studio 2005 Security Features: Watch and Learn
|
if you need to apply a strong name to an assembly that was provided, already compiled, to you and you don't have the source? You first will need to produce the Microsoft intermediate language (MSIL) for the assembly using the ILDASM.EXE utility, then use an assembly key file to sign that MSIL into a new DLL using the ILASM.EXE utility.
for this links :
Chapter 1: Introduction to the .NET Compact Framework
Fundamentals of Microsoft .NET Compact Framework Development for the Microsoft .NET Framework Developer
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/net_vs_netcf.asp?frame=true>
What's New in Smartphone 2003
<http://msdn.microsoft.com/library/en-us/dnwmnew/html/manew_sp03.asp?frame=true>
Develop for Windows Mobile 2003 for Smartphone Using the .NET Compact Framework
<http://msdn.microsoft.com/library/en-us/dnsmtphn2k3/html/Smartphone_2003.asp?frame=true>
An Introduction to Microsoft SmartPhone, and Programming SmartPhone using C#
<http://www.codeproject.com/netcf/SmartphoneIntroCSharp.asp>
Design Considerations for Microsoft Smartphone Applications
<http://www.oreillynet.com/pub/a/wireless/2004/01/07/smartphone.html>
Chapter 2: The Smartphone User Interface
Write Apps for the Smartphone without Dumbing Down Your UI
<http://www.devx.com/wireless/Article/21291>
Creating a Multiple Form Application Framework for the Microsoft .NET Compact Framework
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/netcfuiframework.asp?frame=true>
How to Create a Microsoft .NET Compact Framework-based Image Button
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/ImageButton.asp?frame=true>
Crafting Smartphone User Interfaces Using .NET Compact Framework
Develop for the SmartPhone Using Techniques You Already Know
<http://www.devx.com/wireless/Article/17968>
Chapter 3: Smartphone Controls
Creating Controls by Hand in the .NET Compact Framework
<http://www.devx.com/getHelpOn/10MinuteSolution/17430>
.NET Compact Framework Sample: Hosting A Native Windows Control
Developing Custom Controls in C# with Smart Device Extensions
<http://msdn.microsoft.com/library/en-us/dncenet/html/customctrlssde.asp?frame=true>
Chapter 4: Graphics
Creating a Microsoft .NET Compact Framework-based Animation Control
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/animationcontrol.asp?frame=true>
Chapter 5: Files and Directories
Working with files on Smartphone devices with the .NET Compact Framework
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/SPFiles.asp?frame=true>
Chapter 6: Mobile Web Services
Consuming Web Services with the Microsoft .NET Compact Framework
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/netcfwebservices.asp?frame=true>
Chapter 7: Working with Unmanaged Code
Accessing Phone APIs from the Microsoft .NET Compact Framework
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/netcfphoneapi.asp?frame=true>
Advanced P/Invoke on the Microsoft .NET Compact Framework
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/netcfadvinterop.asp?frame=true>
An Introduction to P/Invoke and Marshaling on the Microsoft .NET Compact Framework
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/netcfintrointerp.asp?frame=true>
Creating a P/Invoke Library
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/PInvokeLib.asp?frame=true>
P/Invoking Serial APIs in the Compact Framework
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/PISAPICF.asp?frame=true>
Using dumpbin.exe as an Aid for Declaring P/Invokes
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/netcfdumpbinpinvoke.asp?frame=true>
Chapter 8: Deploying Smartphone Application
Deployment Patterns for Microsoft .NET Compact Framework
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/DeploymentPatterns.asp?frame=true>
Smartphone 2003 Application Deployment Demystified
<http://msdn.microsoft.com/library/en-us/dnsmtphn2k3/html/sp_2003_app_deploy_demyst.asp?frame=true>
Chapter 9: Interoperability
Connecting Microsoft Mobile Devices to Java Infrastructures
<http://www.sys-con.com/story/?storyid=47342&DE=1>
Architecting Disconnected Mobile Applications Using a Service Oriented Architecture
<http://msdn.microsoft.com/library/en-us/dnppc2k3/html/develop_disconnect_mob_apps.asp?frame=true>
Chapter 10: Game Programming with Smartphone
Games Programming with Cheese: Part One
<http://msdn.microsoft.com/library/en-us/dnsmtphn2k3/html/gamesprogwithcheese.asp?frame=true>
Games Programming with Cheese: Part Two
<http://msdn.microsoft.com/library/en-us/dnsmtphn2k3/html/playingthegame.asp?frame=true>
Games Programming with Cheese: Part Three
<http://msdn.microsoft.com/library/en-us/dnsmtphn2k3/html/completingthegame.asp?frame=true>
Games Programming with Cheese: Part Four
<http://msdn.microsoft.com/library/en-us/dnsmtphn2k3/html/agameapplication.asp?frame=true>
Chapter 11: Advanced Topics
Security:
A Practical Guide to the Smartphone Application Security and Code Signing Model for Developers
<http://msdn.microsoft.com/library/en-us/dnsmtphn2k3/html/smartphone_security.asp?frame=true>
Sending and Receiving SMS Messages:
Receiving SMS Messages Inside a Managed Application
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/ReceivingSMSMessages.asp?frame=true>
Sending SMSs from your Microsoft .NET Compact Framework-based Applications
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/netcfsendsms.asp?frame=true>
Debugging:
Microsoft .NET Compact Framework Debugging
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/CompactFXDebug.asp?frame=true>
Performance:
An Overview of the .Net Compact Framework Garbage Collector
<http://weblogs.asp.net/stevenpr/archive/2004/07/26/197254.aspx>
Microsoft .NET Compact Framework Multi-threading Tips
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/netcfmultithreadedapp.asp?frame=true>
Microsoft .NET Compact Framework Background Processing Techniques
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/BackgroundProcess.asp?frame=true>
Improving Microsoft .NET Compact Framework-based Application Form Load Performance
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/netcfimproveformloadperf.asp?frame=true>
Developing Well Performing .NET Compact Framework Applications
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/netcfperf.asp?frame=true>
.Net Compact Framework Advanced Memory Management
<http://weblogs.asp.net/mikezintel/archive/2004/12/08/278153.aspx>
Miscellaneous:
Creating Self-Updating Applications With the .NET Compact Framework
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/AutoUpdater.asp?frame=true>
Improving .NET Compact Framework HTTP Communications using HttpWebRequest and Custom ASP.NET Providers
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/httpcomm.asp?frame=true>
Connecting a Smartphone 2003 Application to a Remoting Infrastructure
<http://www.devx.com/dotnet/article/22460>
.NET Compact Framework Mobile Web Server Architecture
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/NETCFMA.asp?frame=true>
Chapter 12: What's Next
What's New in the .NET Compact Framework 2.0
<http://msdn2.microsoft.com/library/ws1c3xeh.aspx>
Other Resources (Links gathered from comments)
Pragmatic Smartphone Application Hints and Tricks:
http://homepages.inspire.net.nz/~gambit/Article/
Programming Smartphone 2002/2003/SE with Embedded Visual Basic (eVB):
http://www.omnisoft.com/articles/spevb/default.asp
Smartphone "Tip-o-the-Day"
http://spaces.msn.com/members/lesgainous/
Microsoft ASP.NET v1.1 Membership Management Component Prototype is a collection of classes and sample scripts that allows a developer to more easily authenticate users, authorize users, and store per-user property data in a user profile.
Warning:
There are several things you should consider before using this component in your application:
There is no support provided by Microsoft for this component. No updates or new versions will be released.
The license for this component expires 90 days after the release of ASP.NET 2.0.
If you use this component in your ASP.NET 1.1 application, there will be significant work required to upgrade that application to use the ASP.NET 2.0 Membership and Roles feature.
If you are interested in leveraging Membership and Roles functionality in your application, we recommend that you build your application using ASP.NET 2.0 Beta 2 instead of using this component. There is a Go-Live license for ASP.NET 2.0 Beta 2 which allows you to deploy your applications in product environments. Migrating your application from the Beta 2 version of ASP.NET 2.0 to the final version of ASP.NET 2.0 will be much easier than migrating your application from the ASP.NET 1.1 Member Roles Prototype to the final version of ASP.NET 2.0
Microsoft ASP.NET v1.1 Member Management Component Prototype
Download File
Do you know the security status of your network? Get a visual. The Visio Connector for MBSA lets you view the results of a Microsoft Baseline Security Analyzer scan in a clear, comprehensive Microsoft Office Visio 2003 network diagram.
When the Visio Connector for MBSA is installed, it monitors network shapes on the Visio drawing that contain one of the following Custom Properties:
· Network Name
· IP Address
Once a network diagram has been created, the Visio Connector for MBSA can run a MBSA scan on the network and display color-coded results on a Visio diagram with the ability to provide detailed reports.
download :
Microsoft Office Visio 2003 Connector for the Microsoft Baseline Security Analyzer (MBSA):
|
|