當前位置:首頁 » 網頁前端 » web配置文件加固
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

web配置文件加固

發布時間: 2022-05-08 05:47:15

『壹』 WEB應用防火牆的WEB應用加固工具

這些功能增強被保護Web應用的安全性,它不僅能夠屏蔽WEB應用固有弱點,而且能夠保護WEB應用編程錯誤導致的安全隱患。
需要指出的是,並非每種被稱為Web應用防火牆的設備都同時具有以上四種功能。
同時WEB應用防火牆還具有多面性的特點。比如從網路入侵檢測的角度來看可以把WAF看成運行在HTTP層上的IDS設備;從防火牆角度來看,WAF是一種防火牆的功能模塊;還有人把WAF看作「深度檢測防火牆」的增強。(深度檢測防火牆通常工作在的網路的第三層以及更高的層次,而Web應用防火牆則在第七層處理HTTP服務並且更好地支持它。)

『貳』 Web.Config 配置文件

不是伺服器問題,我弟弟也打不開,但在我電腦上就能打開。

『叄』 一個JAVA WEB 軟體項目配置文件太多,如何做一個工具來方便實施人員部署環境

自己用java編寫一個安裝工具(界面或者命令行)的,按步驟進行配置,通過代碼修改配置文件信息。這樣能減少一部分部署工作量,剩下的只能手動。啟動可以通過腳本

『肆』 網站打開提示Web.Config 問題,請高手支招!

原因1: web.config 文件不完整.不是合格的asp.net 配置文件. 解決: 您要檢查web.config 是否合格,有時候是粗心,xml文件不完整.導致的問題。
原因2: asp.net版本問題.asp.net有asp.net 1.1和 asp.net2.0 兩個版本.

『伍』 怎麼配置web.config

web.config
Web配置文件(*.config)編輯本段認識Web.config文件
Web.config文件是一個XML文本文件,它用來儲存 ASP.NET Web 應用程序的配置信息(如最常用的設置ASP.NET Web 應用程序的身份驗證方式),它可以出現在應用程序的每一個目錄中。當你通過VB.NET新建一個Web應用程序後,默認情況下會在根目錄自動創建一個默認的 Web.config文件,包括默認的配置設置,所有的子目錄都繼承它的配置設置。如果你想修改子目錄的配置設置,你可以在該子目錄下新建一個Web.config文件。它可以提供除從父目錄繼承的配置信息以外的配置信息,也可以重寫或修改父目錄中定義的設置。 在運行時對Web.config文件的修改不需要重啟服務就可以生效(註:<processModel> 節例外)。當然Web.config文件是可以擴展的。你可以自定義新配置參數並編寫配置節處理程序以對它們進行處理。編輯本段web.config配置文件
(默認的配置設置)以下所有的代碼都應該位於 <configuration> <system.web> 和 </system.web> </configuration> 之間,出於學習的目的下面的示例都省略了這段XML標記 1、<authentication> 節 作用:配置 ASP.NET 身份驗證支持(為Windows、Forms、PassPort、None四種)。該元素只能在計算機、站點或應用程序級別聲明。<authentication> 元素必需與</autherization> 節配合使用。 示例: 以下示例為基於窗體(Forms)的身份驗證配置站點,當沒有登陸的用戶訪問需要身份驗證的網頁,網頁自動跳轉到登陸網頁。 <authentication mode="Forms" > <forms loginUrl="logon.aspx" name=".FormsAuthCookie"/> </authentication> 其中元素loginUrl表示登陸網頁的名稱,name表示Cookie名稱 2、<authorization> 節 作用:控制對 URL 資源的客戶端訪問(如允許匿名用戶訪問)。此元素可以在任何級別(計算機、站點、應用程序、子目錄或頁)上聲明。必需與</authentication> 節配合使用。 示例:以下示例禁止匿名用戶的訪問 <authorization> <deny users="?"/> </authorization> 註:你可以使用user.identity.name來獲取已經過驗證的當前的用戶名;可以使用 web.Security.FormsAuthentication.RedirectFromLoginPage方法將已驗證的用戶重定向到用戶剛才請求的頁面.具體的實例請參考: Forms驗證:http://www.knowsky.com/343322.html 3、<compilation>節 作用:配置 ASP.NET 使用的所有編譯設置。默認的debug屬性為「False」.在程序編譯完成交付使用之後應將其設為"True"(Web.config文件中有詳細說明,此處省略示例) 4、<customErrors> 作用:為 ASP.NET 應用程序提供有關自定義錯誤信息的信息。它不適用於 XML Web services 中發生的錯誤。 示例:當發生錯誤時,將網頁跳轉到自定義的錯誤頁面。 <customErrors defaultRedirect="ErrorPage.aspx" mode="RemoteOnly"> </customErrors> 其中元素defaultRedirect表示自定義的錯誤網頁的名稱。mode元素表示:對不在本地 Web 伺服器上運行的用戶顯示自定義(友好的)信息。 5、<httpRuntime>節 作用:配置 ASP.NET HTTP 運行庫設置。該節可以在計算機、站點、應用程序和子目錄級別聲明。 示例:控制用戶上傳文件最大為4M,最長時間為60秒,最多請求數為100 <httpRuntime maxRequestLength="4096" executionTimeout="60" appRequestQueueLimit="100"/> 6、 <pages> 作用:標識特定於頁的配置設置(如是否啟用會話狀態、視圖狀態,是否檢測用戶的輸入等)。<pages>可以在計算機、站點、應用程序和子目錄級別聲明。 示例:不檢測用戶在瀏覽器輸入的內容中是否存在潛在的危險數據(註:該項默認是檢測,如果你使用了不檢測,一要對用戶的輸入進行編碼或驗證),在從客戶端回發頁時將檢查加密的視圖狀態,以驗證視圖狀態是否已在客戶端被篡改。(註:該項默認是不驗證) <pages buffer="true" enableViewStateMac="true" validateRequest="false"/> 7、<sessionState> 作用:為當前應用程序配置會話狀態設置(如設置是否啟用會話狀態,會話狀態保存位置)。 示例: <sessionState mode="InProc" cookieless="true" timeout="20"/> </sessionState> 註: mode="InProc"表示:在本地儲存會話狀態(你也可以選擇儲存在遠程伺服器或SAL伺服器中或不啟用會話狀態) cookieless="true"表示:如果用戶瀏覽器不支持Cookie時啟用會話狀態(默認為False) timeout="20"表示:會話可以處於空閑狀態的分鍾數 8、<trace> 作用:配置 ASP.NET 跟蹤服務,主要用來程序測試判斷哪裡出錯。 示例:以下為Web.config中的默認配置: <trace enabled="false" requestLimit="10" pageOutput="false" traceMode="SortByTime" localOnly="true" /> 註: enabled="false"表示不啟用跟蹤;requestLimit="10"表示指定在伺服器上存儲的跟蹤請求的數目 pageOutput="false"表示只能通過跟蹤實用工具訪問跟蹤輸出; traceMode="SortByTime"表示以處理跟蹤的順序來顯示跟蹤信息 localOnly="true" 表示跟蹤查看器 (trace.axd) 只用於宿主 Web 伺服器編輯本段自定義Web.config文件配置節
自定義Web.config文件配置節過程分為兩步。 一是在在配置文件頂部 <configSections> 和 </configSections>標記之間聲明配置節的名稱和處理該節中配置數據的 .NET Framework 類的名稱。 二是在 <configSections> 區域之後為聲明的節做實際的配置設置。 示例:創建一個節存儲資料庫連接字元串 <configuration> <configSections> <section name="appSettings" type="System.Configuration.NameValueFileSectionHandler, System, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/> </configSections> <appSettings> <add key="scon" value="server=a;database=northwind;uid=sa;pwd=123"/> </appSettings> <system.web> ...... </system.web> </configuration>編輯本段訪問Web.config文件
你可以通過使用ConfigurationSettings.AppSettings 靜態字元串集合來訪問 Web.config 文件示例:獲取上面例子中建立的連接字元串。 vb.net Dim sconstr As String = System.Configuration.ConfigurationManager.AppSettings("ConnectionString") c# ConnectionString string=System.Configuration.ConfigurationManager.AppSettings["ConnectionString"];編輯本段創建Web.config文件
1.在「解決方案資源管理器」中,單擊「刷新」圖標以確認應用程序還沒有 Web.config 文件。 如果已使用網站管理工具或某些其他方式來配置應用程序,則可能已自動創建了 Web.config 文件。單擊「刷新」更新文件列表。 2.在「解決方案資源管理器」中,右擊網站名稱,然後單擊「添加新項」。 3.在「模板」窗口中,單擊「Web 配置文件」。 「名稱」文本框中的文件名應為 Web.config。可以為該文件提供其他名稱,不過這是默認名稱。.config 文件擴展名可防止 ASP.NET 下載相應文件。 4.單擊「添加」創建該文件,然後將其打開進行編輯。 該文件包含本主題後面「示例」部分中顯示的代碼,並具有一些初始默認值。應用程序從 %SystemRoot%\Microsoft.NET\Framework\<版本>\CONFIG 目錄下的 Machine.config 和 Web.config 文件繼承所有配置設置,但在此處看不到這些默認設置。如果要重寫繼承的默認設置或添加 httpHandlers 元素(ASP.NET 設置架構) 等集合元素,則只需創建應用程序級別和目錄級別的 Web.config 文件。 若要查看當前應用程序的所有配置設置,可以運行主題如何:以編程方式查看繼承的配置設置和本地配置設置中包含的代碼。也可以查看 %SystemRoot%\Microsoft.NET\Framework\<版本>\CONFIG 目錄下的 Machine.config.comments 或 Web.config.comments 文件(這兩個文件也包含有用的注釋),但這兩個文件將不會包含所有運行時設置,請參見如何:以編程方式查看繼承的配置設置和本地配置設置。 5.如果更改了 Web.config 文件,則保存該文件。 保存 Web.config 文件會重新啟動應用程序。也可以選擇使用單個節元素的 configSource 屬性指向某個輔助配置文件,更改輔助配置文件不會導致應用程序重新啟動。有關更多信息,請參見節元素所繼承的常規屬性中的 configSource。

『陸』 如何為配置文件加密

在web.config或app.config文件里我們經常會存儲一些敏感信息,比如connectionStrings或者appSettings,比如像下面的文件。
<?xml version="1.0"?>
<configuration>
<system.web>
<compilation debug="true" targetFramework="4.0" />
</system.web>
<connectionStrings>
<add name="MyNwConnectionString" connectionString="Server=myServerAddress;Database=myDataBase;User Id=myUsername; Password=myPassword;"/>
</connectionStrings>
<appSettings>
<add key="User" value="myUsername"/>
<add key="Password" value="myPassword"/>
</appSettings>
</configuration>
using System;
using System.Configuration;

namespace WebConfigEncryptTest
{
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string user = ConfigurationManager.AppSettings.Get("User");
string password = ConfigurationManager.AppSettings.Get("Password");
string connectionString = ConfigurationManager.ConnectionStrings["MyNwConnectionString"].ConnectionString;
}
}
}

(一)加密文件可以使用的Provider
.NET為我們提供了一個工具aspnet_regiis.exe來對web.config文件中的敏感信息進行加密(app.config文件可以先改名為web.config,加密後再改回app.config)。你可以使用兩個provider中的一個來進行加密:
System.Configuration.:在System.Configuration.dll中,使用Windows DPAPI(Data Protection API)來進行加密,密鑰存在Windows Local Security Authority(LSA)中。注意:當使用時,加密文件所使用的帳號需要與運行web application的帳號相同,否則web application無法解密加密的內容。
System.Configuration.:在System.Configuration.dll中,使用RSA演算法來進行加密(RSA演算法是非對稱加密,參見《對稱加密與非對稱加密 》),公鑰存放在config文件當中,只有加密的計算機有密鑰。通常是默認的預設provider。
(二)加密文件的命令
加密web.config文件可以使用:
aspnet_regiis -pef section web-app-physical-dir
Encrypt the configuration section. Optional arguments:
[-prov provider] Use this provider to encrypt.

比如運行下面的命令就會分別對connectionStrings和appSettings中的信息進行加密:

aspnet_regiis.exe -pef "connectionStrings" "C:\myweb\HelloService"
aspnet_regiis.exe -pef "appSettings" "C:\myweb\HelloService"

加密後的web.config文件變成:

<?xml version="1.0"?>
<configuration>
<system.web>
<compilation targetFramework="4.0" />
</system.web>
<connectionStrings configProtectionProvider="">
<EncryptedData Type="http://www.w3.org/2001/04/xmlenc#Element"
xmlns="http://www.w3.org/2001/04/xmlenc#">
<EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#tripledes-cbc" />
<KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#">
<EncryptedKey xmlns="http://www.w3.org/2001/04/xmlenc#">
<EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#rsa-1_5" />
<KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#">
<KeyName>Rsa Key</KeyName>
</KeyInfo>
<CipherData>
<CipherValue>E2fO9C0TJVxImLYQZza+fCQdDbTpNh/kOKLRsK6zcFjkgtUCl6SnMViuu/2G1NVTxqXyEWYwyK6AiCZA+feeG/+f2EIimP7LJI+JRZVerI4MU6Ke3wxm2S/ATc73/W6eg9808f4//JB0kso0kGJ9i+==</CipherValue>
</CipherData>
</EncryptedKey>
</KeyInfo>
<CipherData>
<CipherValue>I1DWG11Iz/rq+NC9C/21B3Q22J9+//JW1oCvAGs5tHrZU5+vgvm0yCmSuCWZbXva+iv9J35EQqs58pq+hwVo1hg1dffpGCBykaXGl5VX3TIGc=</CipherValue>
</CipherData>
</EncryptedData>
</connectionStrings>
<appSettings configProtectionProvider="">
<EncryptedData Type="http://www.w3.org/2001/04/xmlenc#Element"
xmlns="http://www.w3.org/2001/04/xmlenc#">
<EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#tripledes-cbc" />
<KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#">
<EncryptedKey xmlns="http://www.w3.org/2001/04/xmlenc#">
<EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#rsa-1_5" />
<KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#">
<KeyName>Rsa Key</KeyName>
</KeyInfo>
<CipherData>
<CipherValue>//SuBvV3D2kxhHaYGFaPuvYgsyOLf3+aYR3O/uh/+/iSANzAWoC+==</CipherValue>
</CipherData>
</EncryptedKey>
</KeyInfo>
<CipherData>
<CipherValue>5W2KhG/oETLUDptobcOM52x1qD/g9A0By/wcGXI+///w=</CipherValue>
</CipherData>
</EncryptedData>
</appSettings>
</configuration>

是默認的預設provider,如果想使用,可以用-prov參數指明:

aspnet_regiis.exe -pef "connectionStrings" "C:\myweb\HelloService" -prov ""
aspnet_regiis.exe -pef "appSettings" "C:\myweb\HelloService" -prov ""

加密配置文件後,源程序不需要做任何改動。如果要修改或添加新的配置信息,需要先解密配置文件。不論使用哪種Provider,都只能在進行加密的計算機上對配置文件進行解密。

『柒』 如何對web.config進行加密和解密

你好,可以使用受保護配置來加密 Web 應用程序配置文件(如 Web.config 文件)中的敏感信息(包括用戶名和密碼、資料庫連接字元串和加密密鑰)。對配置信息進行加密後,即使攻擊者獲取了對配置文件的訪問,也可以使攻擊者難以獲取對敏感信息的訪問,從而改進應用程序的安全性。 針對asp.net 2.0的應用程序的資料庫鏈接字元串進行加密:例如,未加密的配置文件中可能包含一個指定用於連接到資料庫的連接字元串的節,如下面的示例所示: <configuration> <connectionStrings>
<add name="SamplesqlServer" connectionString="Data Source=localhost;Integrated Security=SSPI;Initial Catalog=Northwind;" />
</connectionStrings>
</configuration>
ASP.NET 2.0 中有一個新的安全特性.可以對 Web.config 文件中的任何配置節進行加密處理,可以通過手工運行工具aspnet_regiis或者編程來完成這個工作。如果你可以直接訪問你的Web 伺服器,你可以通過運行如下的命令行: cd %windows%/Microsoft.NET/Framework/versionNumber aspnet_regiis -pe "connectionStrings" -app "/SampleApplication" –prov -pd section
對配置節進行解密。此參數採用下面的可選參數: · -app virtualPath 指定應該在包含路徑的級別進行解密。 · -location subPath 指定要解密的子目錄。 · -pkm 指定應該對 Machine.config 而非 Web.config 文件進行解密。

-pdf section webApplicationDirectory
對指定物理(非虛擬)目錄中的 Web.config 文件的指定配置節進行解密。

-pe section
對指定的配置節進行加密。此參數採用下面的可選修飾符: · -prov provider 指定要使用的加密提供程序。 · -app virtualPath 指定應該在包含路徑的級別進行加密。 · -location subPath 指定要加密的子目錄。 · -pkm 指定應該對 Machine.config 而非 Web.config 文件進行加密。

-pef section webApplicationDirectory
對指定物理(非虛擬)目錄中的 Web.config 文件的指定配置節進行加密。
如果你是使用虛擬主機等不能訪問物理的伺服器,你仍然能夠通過編程方式加密的連接字元串: 1 Configuration config = Configuration.GetWebConfiguration(Request.ApplicationPath);
2 ConfigurationSection section = config.Sections["connectionStrings"];
3 section.SectionInformation.ProtectSection("");;
4 config.Update ();或者 config.Save();

//加密web.Config中的指定節
private void ProtectSection(string sectionName)
{
Configuration config = WebConfigurationManager.OpenWebConfiguration(Request.ApplicationPath);
ConfigurationSection section = config.GetSection(sectionName);
if (section != null && !section.SectionInformation.IsProtected)
{
section.SectionInformation.ProtectSection("");
config.Save();
}
}

//解密web.Config中的指定節
private void UnProtectSection(string sectionName)
{
Configuration config = WebConfigurationManager.OpenWebConfiguration(Request.ApplicationPath);
ConfigurationSection section = config.GetSection(sectionName);
if (section != null && section.SectionInformation.IsProtected)
{
section.SectionInformation.UnprotectSection();
config.Save();
}
}

『捌』 如何修改web伺服器配置

第一步:IIS的安裝 A.在控制面板中選擇「添加/刪除程序」,在出現的對話框中選擇「添加/刪除Windows組件」。 B.在出現的復選框中選擇安裝Internet信息服務(IIS),這一組件約需19MB的空間。 C.點擊「下一步」,並將Win2000安裝光碟放入光碟機,安裝程序即可將程序文件復制到硬碟中,點擊「結束」即可完成。 第二步:IIS中Web伺服器的基本配置 IIS中Web伺服器的基本配置主要包括如下幾部分: A.打開IIS伺服器的配置窗口,選擇「開始」→「程序」→「管理工具」→「Internet服務管理器」,或者「選擇」→「控制面板」→「管理工具」→「Internet服務管理器」也可,打開的窗口。 B.在打開的窗口中滑鼠右擊「默認Web站點」,選擇「屬性」菜單。 C.在出現的「默認Web站點屬性」窗口中,選擇「主目錄」標簽,用以設置Web內容在硬碟中的位置,默認目錄為「C:\Inetpub\Wwwroot」,你可根據需要自己設置。 D.在屬性窗口處選擇「文檔」標簽,設置自己默認的首頁網頁名稱,例如「Myfirstweb.htm」,將其添加並移動到列表的最頂端。 E.確認默認的Web站點是否已經啟動,如果沒有可以滑鼠右鍵點擊「默認Web站點」,選擇「啟動」,在打開的IE地址欄中鍵入本機的IP地址,即可看到自己指定的主頁已經開始在Internet上發布了。 這里只是介紹IIS最基本的設置選項,大家還可以按照需要去具體設置上面提到的「默認Web站點屬性」,通過它來配置IIS的安全和其他一些參數。 IIS雖然好用,但默認安裝的情況下,它也有很多的安全漏洞,包括著名的Unicode漏洞和CGI漏洞,因此在IIS安裝完成之後,建議繼續在微軟公司主頁上下載安裝它們提供的安全漏洞補丁SP1和SP2。此外,建議將磁碟的文件系統轉換成NTFS格式,安裝系統的分區可在系統安裝候轉換,也可在安裝完系統以後用PQMagic等工具進行轉換。

『玖』 如何加固web伺服器防sql注入攻擊

所謂SQL注入式攻擊,就是攻擊者把SQL命令插入到Web表單的輸入域或頁面請求的查詢字元串,欺騙伺服器執行惡意的SQL命令。在某些表單中,用戶輸入的內容直接用來構造(或者影響)動態SQL命令,或作為存儲過程的輸入參數,這類表單特別容易受到SQL注入式攻擊。常見的SQL注入式攻擊過程類如:
⑴ 某個ASP.NET Web應用有一個登錄頁面,這個登錄頁面控制著用戶是否有權訪問應用,它要求用戶輸入一個名稱和密碼。
⑵ 登錄頁面中輸入的內容將直接用來構造動態的SQL命令,或者直接用作存儲過程的參數。下面是ASP.NET應用構造查詢的一個例子:
System.Text.StringBuilder query = new System.Text.StringBuilder(
"SELECT * from Users WHERE login = '")
.Append(txtLogin.Text).Append("' AND password='")
. Append(txtPassword.Text).Append("'");
⑶ 攻擊者在用戶名字和密碼輸入框中輸入"'或'1'='1"之類的內容。
⑷ 用戶輸入的內容提交給伺服器之後,伺服器運行上面的ASP.NET代碼構造出查詢用戶的SQL命令,但由於攻擊者輸入的內容非常特殊,所以最後得到的SQL命令變成:SELECT * from Users WHERE login = '' or '1'='1' AND password = '' or '1'='1'。
⑸ 伺服器執行查詢或存儲過程,將用戶輸入的身份信息和伺服器中保存的身份信息進行對比。
⑹ 由於SQL命令實際上已被注入式攻擊修改,已經不能真正驗證用戶身份,所以系統會錯誤地授權給攻擊者。
如果攻擊者知道應用會將表單中輸入的內容直接用於驗證身份的查詢,他就會嘗試輸入某些特殊的SQL字元串篡改查詢改變其原來的功能,欺騙系統授予訪問許可權。
系統環境不同,攻擊者可能造成的損害也不同,這主要由應用訪問資料庫的安全許可權決定。如果用戶的帳戶具有管理員或其他比較高級的許可權,攻擊者就可能對資料庫的表執行各種他想要做的操作,包括添加、刪除或更新數據,甚至可能直接刪除表。
⑴ 對於動態構造SQL查詢的場合,可以使用下面的技術:
第一:替換單引號,即把所有單獨出現的單引號改成兩個單引號,防止攻擊者修改SQL命令的含義。再來看前面的例子,「SELECT * from Users WHERE login = ''' or ''1''=''1' AND password = ''' or ''1''=''1'」顯然會得到與「SELECT * from Users WHERE login = '' or '1'='1' AND password = '' or '1'='1'」不同的結果。
第二:刪除用戶輸入內容中的所有連字元,防止攻擊者構造出類如「SELECT * from Users WHERE login = 'mas' -- AND password =''」之類的查詢,因為這類查詢的後半部分已經被注釋掉,不再有效,攻擊者只要知道一個合法的用戶登錄名稱,根本不需要知道用戶的密碼就可以順利獲得訪問許可權。
第三:對於用來執行查詢的資料庫帳戶,限制其許可權。用不同的用戶帳戶執行查詢、插入、更新、刪除操作。由於隔離了不同帳戶可執行的操作,因而也就防止了原本用於執行SELECT命令的地方卻被用於執行INSERT、UPDATE或DELETE命令。 ⑵ 用存儲過程來執行所有的查詢。SQL參數的傳遞方式將防止攻擊者利用單引號和連字元實施攻擊。此外,它還使得資料庫許可權可以限制到只允許特定的存儲過程執行,所有的用戶輸入必須遵從被調用的存儲過程的安全上下文,這樣就很難再發生注入式攻擊了。
⑶ 限製表單或查詢字元串輸入的長度。如果用戶的登錄名字最多隻有10個字元,那麼不要認可表單中輸入的10個以上的字元,這將大大增加攻擊者在SQL命令中插入有害代碼的難度。
⑷ 檢查用戶輸入的合法性,確信輸入的內容只包含合法的數據。數據檢查應當在客戶端和伺服器端都執行——之所以要執行伺服器端驗證,是為了彌補客戶端驗證機制脆弱的安全性。在客戶端,攻擊者完全有可能獲得網頁的源代碼,修改驗證合法性的腳本(或者直接刪除腳本),然後將非法內容通過修改後的表單提交給伺服器。因此,要保證驗證操作確實已經執行,唯一的辦法就是在伺服器端也執行驗證。你可以使用許多內建的驗證對象,例如RegularExpressionValidator,它們能夠自動生成驗證用的客戶端腳本,當然你也可以插入伺服器端的方法調用。如果找不到現成的驗證對象,你可以通過CustomValidator自己創建一個。
⑸ 將用戶登錄名稱、密碼等數據加密保存。加密用戶輸入的數據,然後再將它與資料庫中保存的數據比較,這相當於對用戶輸入的數據進行了「消毒」處理,用戶輸入的數據不再對資料庫有任何特殊的意義,從而也就防止了攻擊者注入SQL命令。System.Web.Security.FormsAuthentication類有一個,非常適合於對輸入數據進行消毒處理。
⑹ 檢查提取數據的查詢所返回的記錄數量。

『拾』 windows做web伺服器怎麼做安全加固

你可以安裝護衛神.高級安全防護,針對伺服器效果很好。