aspnet_client folder enumeration and fuzzing



ASP.net developers should be aware of the aspnet_client folder in their web space. This folder is related to ASP.net runtime validation and has its own importance. This folder is automatically created when you enable the ASP.net extension on your site. The aspnet_client folder contains the client-side code used by some of the ASP.NET Web Form controls (namely validation, SmartNavigation). The scripts contained in this folder get called by web pages that utilize controls that need these scripts. If you use a control that uses one of the scripts in this folder and the script can’t be found, then that control will not be able to do its client-side job.

The aspnet_client folder should be considered as the ASP.NET runtime component not your ASP.NET application. The scripts in the folder might change in the new version. This is why Publish Site tool will delete it first and then ASP.net will recreate it. If you had a web application developed in an older version, then published it to a web site with a newer version of ASP.NET, the aspnet_client should have the scripts from the same version of ASP.NET. So it is a good practice to let ASP.NET maitain this folder.


I notice that there's frequently an aspnet_client folder under the standard IIS web folder structure. What is this used for? Is it needed?

In the .NET 1.1 days and before this folder provided ASP.NET with it's JavaScript support for the validation controls and other functionality. If you don't have a .NET 1.1 site or older running it should be safe to delete it. I would rename it first to ensure it doesn't cause any problems.

----------
Created By ITDRAFTS (me)

I have created this fuzzing list for pen test purposes

// location /aspnet_client/system_web/ 
1_0_2204_21
1_0_2914_0
1_0_3705_0
1_0_3705_209
1_0_3705_288
1_0_3705_6018
1_1_4322_510
1_1_4322_573
1_1_4322_2032
1_1_4322_2300
1_1_4322_2310
1_1_4322_2407
1_1_4322_2443
2_0_40607_16
2_0_50215_44
2_0_50727_42
2_0_50727_312
2_0_50727_832
2_0_50727_1433
2_0_50727_1434
2_0_50727_3053
2_0_50727_3082
2_0_50727_3603
2_0_50727_3607
2_0_50727_3615
2_0_50727_4016
2_0_50727_4918
2_0_50727_4927
2_0_50727_4952
3_0_4506_30
3_0_4506_26
3_0_4506_590
3_0_4506_648
3_0_4506_2123
3_0_4506_2254
3_5_20404_0
3_5_20706_1
3_5_21022_8
3_5_30428_1
3_5_30729_01
3_5_30729_4926
4_0_20506
4_0_21006
4_0_30128_1
4_0_30319_1
1_1_4322 
2_0_50727
4_0_30319 
4_5_50709
4_0_30319_17929
4_0_30319_17626
4_5_50501
4_0_30319_17379
4_5_50131
4_0_30319_17020
4_5_40805
// Only two underscores
1_0_2204
1_0_2914
1_0_3705
1_0_3705
1_1_4322
2_0_40607
2_0_50215
2_0_50727
2_0_50727
3_0_4506
3_5_20404
3_5_20706
3_5_21022
3_5_30428
3_5_30729
4_0_20506
4_0_21006
4_0_30128
4_0_30319
1_1_4322 
2_0_50727
4_0_30319 
4_5_50709
4_0_30319
4_5_50501
4_0_30319
4_5_50131
4_0_30319
4_5_40805