版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p><b> 外文文獻翻譯</b></p><p><b> 英文原文</b></p><p> Basic Security Practices for Web Applications</p><p> Even if you have limited experience with and kn
2、owledge of application security, there are basic measures that you should take to help protect your Web applications. The following sections in this topic provide minimum-security guidelines that apply to all Web applica
3、tions.General Web Application Security Recommendations;Run Applications with Minimum Privileges ;Know Your Users; Guard Against Malicious User Input;Access Databases Securely;Create Safe Error Messages;Keep Sensitive Inf
4、ormation Safe</p><p> 1. General Web Application Security Recommendations</p><p> Even the most elaborate application security can fail if a malicious user can use simple ways to gain access t
5、o your computers. General Web application security recommendations include the following: Back up data often and keep your backups physically secure.Keep your Web server physically secure so that unauthorized users canno
6、t gain access to it, turn it off, physically steal it, and so on.Use the Windows NTFS file system, not FAT32. NTFS offers substantially more security than FAT32. Protect </p><p> 2. Run Applications with Mi
7、nimum Privileges</p><p> When your application runs, it runs within a context that has specific privileges on the local computer and potentially on remote computers. For information about configuring applic
8、ation identity, see Configuring ASP.NET Process Identity.To run with the minimum number of privileges needed, follow these guidelines: Do not run your application with the identity of a system user (administrator).Run th
9、e application in the context of a user with the minimum practical privileges. Set permissions (ACLs</p><p> 3. Know Your Users</p><p> In many applications, it is possible for users to access
10、the site without having to provide credentials. If so, your application accesses resources by running in the context of a predefined user. By default, this context is the local ASPNET user (Windows 2000 or Windows XP) or
11、 NETWORK SERVICE user (Windows Server 2003) on the Web server.To restrict access to users who are authenticated, follow these guidelines: If your application is an intranet application, configure it to use Windows Integr
12、ate</p><p> 4. Guard against Malicious User Input</p><p> As a general rule, never assume that input you get from users is safe. It is easy for malicious users to send potentially dangerous in
13、formation from the client to your application. To help guard against malicious input, follow these guidelines: In forms, filter user input to check for HTML tags, which might contain script. For details, see How to: Prot
14、ect Against Script Exploits in a Web Application by Applying HTML Encoding to Strings.Never echo (display) unfiltered user input. Before displayin</p><p> 5. Access Databases Securely</p><p>
15、Databases typically have their own security. An important aspect Web application security is designing a way for the application to access the database securely. Follow these guidelines: Use the inherent security of your
16、 database to limit who can access database resources. The exact strategy depends on your database and your application: If practical in your application, use Windows Integrated security so that only Windows-authenticated
17、 users can access the database. Integrated security is more </p><p> 6. Create Safe Error Messages</p><p> If you are not careful, a malicious user can deduce important information about your
18、application from the error messages it displays. Follow these guidelines: Do not write error messages that echo information that might be useful to malicious users, such as a user name.Configure the application not to sh
19、ow detailed errors to users. If you want to display detailed error messages for debugging, check first that the user is local to the Web server. For details, see How to: Display Safe Error Messag</p><p> 7.
20、 Keep Sensitive Information Safely</p><p> Sensitive information is any information that you need to keep private. A typical piece of sensitive information is a password or an encryption key. If a malicious
21、 user can get to the sensitive information, then the data protected by the secret is compromised. Follow these guidelines: If your application transmits sensitive information between the browser and the server, consider
22、using Secure Sockets Layer (SSL). Use Protected Configuration to secure sensitive information in configuration files </p><p> 8 . Use Cookies Securely</p><p> Cookies are an easy and useful wa
23、y to keep user-specific information available. However, because cookies are sent to the browser's computer, they are vulnerable to spoofing or other malicious use. Follow these guidelines: Do not store any critical i
24、nformation in cookies. For example, do not store a user's password in a cookie, even temporarily. As a rule, do not store any sensitive information in a cookie that. Instead, keep a reference in the cookie to a locat
25、ion on the server where the informa</p><p> 9. Guard against Denial-of-Service Threats</p><p> An indirect way that a malicious user can compromise your application is by making it unavailable
26、. The malicious user can keep the application too busy to service other users, or if nothing else can simply crash the application. Follow these guidelines: Close or release any resource you use. For example, always clos
27、e data connections and data readers, and always close files when you are done using them.Use error handling (for example, try/catch blocks). Include a finally block in which you relea</p><p><b> 外文譯文&
28、lt;/b></p><p> Web 應(yīng)用程序的基本安全做法</p><p> 即使您對應(yīng)用程序安全性的體驗和了解非常有限,也應(yīng)采取一些基本措施來保護您的 Web 應(yīng)用程序。以下各部分提供了適用于所有 Web 應(yīng)用程序的最低安全性準則。常規(guī) Web 應(yīng)用程序安全性建議;使用最少特權(quán)運行應(yīng)用程序;了解您的用戶;防止惡意用戶的輸入;安全地訪問數(shù)據(jù)庫;創(chuàng)建安全的錯誤消息;保證敏感信息
29、的安全;安全地使用 Cookie;防止拒絕服務(wù)威脅。</p><p> 1.常規(guī) Web 應(yīng)用程序安全性建議;</p><p> 如果惡意用戶可以使用簡單方法進入您的計算機,即使是最精心設(shè)計的應(yīng)用程序安全性也會失敗。常規(guī) Web 應(yīng)用程序安全性建議包括以下內(nèi)容:經(jīng)常備份數(shù)據(jù),并將備份存放在安全的場所;將您的 Web 服務(wù)器放置在安全的場所,使未經(jīng)授權(quán)的用戶無法訪問它、關(guān)閉它、帶走它,等
30、等。使用 Windows NTFS 文件系統(tǒng),不使用 FAT32。NTFS 的安全性比 FAT32 高得多。使用不易破解的密碼,保護 Web 服務(wù)器和同一網(wǎng)絡(luò)上的所有計算機的安全。遵循用于確保 Internet 信息服務(wù) (IIS) 安全的最佳做法。關(guān)閉任何不使用的端口并關(guān)閉不使用的服務(wù)。運行監(jiān)視網(wǎng)站通信量的病毒檢查程序。使用防火墻。了解和安裝來自 Microsoft 和其他供應(yīng)商的最新安全更新。使用 Windows 事件日志記錄,并且
31、經(jīng)常檢查這些日志,以查找可疑活動。這樣的活動包括:反復(fù)嘗試登錄您的系統(tǒng),以及向您的 Web 服務(wù)器發(fā)出數(shù)量巨大的請求。</p><p> 2.使用最少特權(quán)運行應(yīng)用程序</p><p> 當(dāng)您的應(yīng)用程序運行時,它運行在一個具有本地計算機(還可能是遠程計算機)的特定特權(quán)的上下文中。有關(guān)配置應(yīng)用程序標(biāo)識的信息,請參見 配置 ASP.NET 進程標(biāo)識。若要以最少特權(quán)運行,請遵循以下準則: 不要
32、以系統(tǒng)用戶(管理員)身份運行應(yīng)用程序。在具有最少實用特權(quán)的用戶上下文中運行應(yīng)用程序。 設(shè)置應(yīng)用程序所需的所有資源上的權(quán)限(ACL 或訪問控制列表)。使用最嚴格的設(shè)置。例如,如果在您的應(yīng)用程序中是可行的,則將文件設(shè)置為只讀。有關(guān) ASP.NET 應(yīng)用程序標(biāo)識所需的最少 ACL 權(quán)限的列表,請參見 ASP.NET 必需的訪問控制列表 (ACL)。將您的 Web 應(yīng)用程序的文件保存在應(yīng)用程序根目錄下的一個文件夾中。不要讓用戶指定在應(yīng)用程序中進
33、行文件訪問的路徑。這樣有助于防止用戶訪問服務(wù)器的根目錄。</p><p><b> 3.了解您的用戶</b></p><p> 在許多應(yīng)用程序中,用戶有可能不必提供憑據(jù)即可訪問網(wǎng)站。如果是這樣,則您的應(yīng)用程序通過在預(yù)定義用戶的上下文中運行即可訪問資源。默認情況下,此上下文是 Web 服務(wù)器上的本地 ASPNET 用戶(Windows 2000 或 Windows
34、XP)或 NETWORK SERVICE 用戶 (Windows Server 2003)。若要僅允許已授權(quán)用戶進行訪問,請遵循以下準則: 如果您的應(yīng)用程序是 Intranet 應(yīng)用程序,則將其配置為使用 Windows 集成安全性。這樣,用戶的登錄憑據(jù)就可以用于訪問資源。如果您需要從用戶收集憑據(jù),則使用其中一種 ASP.NET 身份驗證策略。有關(guān)示例,請參見 ASP.NET Forms 身份驗證概述。</p><p
35、> 4.防止惡意用戶的輸入</p><p> 通常,決不假定從用戶獲得的輸入是安全的。對惡意用戶來說,從客戶端向您的應(yīng)用程序發(fā)送潛在危險的信息是很容易的。若要幫助防止惡意輸入,請遵循以下準則: 在窗體中,篩選用戶輸入以查找 HTML 標(biāo)記,其中可能包含腳本。有關(guān)詳細信息,請參見 如何:通過對字符串應(yīng)用 HTML 編碼在 Web 應(yīng)用程序中防止腳本侵入。決不回顯(顯示)未經(jīng)篩選的用戶輸入。在顯示不受信任的
36、信息之前,對 HTML 進行編碼以將潛在有害的腳本轉(zhuǎn)換為顯示字符串。類似地,決不將未經(jīng)篩選的用戶輸入存儲在數(shù)據(jù)庫中。如果要接受來自用戶的一些 HTML,則手動篩選它。在您的篩選器中,顯式定義將要接受的內(nèi)容。不要創(chuàng)建一個試圖篩選出惡意輸入的篩選器;因為預(yù)料到所有可能的惡意輸入是非常困難的。不要假定您從標(biāo)頭(通常通過 Request 對象)獲得的信息是安全的。對查詢字符串、Cookie 等采取安全措施。注意,瀏覽器向服務(wù)器報告的信息(用戶代
37、理信息)可以被假冒(如果此信息在您的應(yīng)用程序中相當(dāng)重要)。如有可能,不要將敏感信息(如隱藏字段或 Cookie)存儲在可從瀏覽器訪問的位置。例如,不要將密碼存儲在 Cookie 中。 </p><p> 5.安全地訪問數(shù)據(jù)庫</p><p> 數(shù)據(jù)庫通常具有它們自己的安全性。Web 應(yīng)用程序安全性的一個重要方面是設(shè)計一種應(yīng)用程序安全地訪問數(shù)據(jù)庫的方式。請遵循這些指導(dǎo): 使用數(shù)據(jù)庫的內(nèi)在
38、安全性來限制可以訪問數(shù)據(jù)庫資源的人員。確切的策略取決于您的數(shù)據(jù)庫和應(yīng)用程序: 如果在您的應(yīng)用程序中切實可行,請使用 Windows 集成安全性以便只有 Windows 授權(quán)的用戶才能訪問數(shù)據(jù)庫。集成安全性比使用 SQL Server 標(biāo)準安全性更安全。如果您的應(yīng)用程序使用匿名訪問,請創(chuàng)建具有非常有限的權(quán)限的單個用戶,并以此用戶身份連接來執(zhí)行查詢。不要通過串聯(lián)涉及用戶輸入的字符串創(chuàng)建 SQL 語句。相反,創(chuàng)建參數(shù)化查詢并使用用戶輸入設(shè)置參
39、數(shù)值。 如果您必須將用戶名和密碼存儲在某個位置以用作數(shù)據(jù)庫登錄憑據(jù),請安全地存儲它們。如果可行,請對它們進行加密或計算哈希值。 </p><p> 6.創(chuàng)建安全的錯誤消息</p><p> 如果您不小心,惡意用戶就可以從應(yīng)用程序顯示的錯誤消息推斷出有關(guān)您的應(yīng)用程序的重要信息。請遵循這些指導(dǎo): 不要編寫會回顯可能對惡意用戶有用的信息(例如用戶名)的錯誤消息。將應(yīng)用程序配置為不向用戶顯示詳
40、細錯誤。如果為進行調(diào)試而要顯示詳細錯誤消息,請先檢查該用戶是否為 Web 服務(wù)器的本地用戶。使用customErrors 配置元素控制誰可以查看服務(wù)器發(fā)出的異常。對于容易發(fā)生錯誤的情況(如數(shù)據(jù)庫訪問)創(chuàng)建自定義錯誤處理方式。</p><p> 7.保證敏感信息的安全</p><p> “敏感信息”是需要保密的任意信息。密碼或加密密鑰即是典型的敏感信息。如果惡意用戶可以獲得敏感信息,則該
41、信息保護的數(shù)據(jù)將受到威脅。請遵循這些指導(dǎo): 如果您的應(yīng)用程序在瀏覽器和服務(wù)器之間傳輸敏感信息,請考慮使用安全套接字層 (SSL)。使用受保護的配置來確保配置文件(如 Web.config 或 Machine.config 文件)中敏感信息的安全。如果您必須存儲敏感信息,即使是以您認為人們將無法看到它的形式(如在服務(wù)器代碼中)進行保存,也不要將它保存在網(wǎng)頁中。使用 System.Security.Cryptography 命名空間中提供的
42、強加密算法。</p><p> 8.安全地使用 Cookie</p><p> 為了讓用戶特定的信息保持可用,Cookie 是一種容易而有用的方法。但是,由于 Cookie 會被發(fā)送到瀏覽器所在的計算機,因此它們?nèi)菀妆患倜盎蛴糜谄渌麗阂庥猛?。請遵循這些指導(dǎo): 不要將任何關(guān)鍵信息存儲在 Cookie 中。例如,不要將用戶的密碼存儲在 Cookie 中,即使是暫時存儲也不要這樣做。作為一項
43、原則,不要在 Cookie 中存儲任何敏感信息。而是在 Cookie 中保存對信息在服務(wù)器上的位置的引用。將 Cookie 的過期日期設(shè)置為可以設(shè)置的最短時間。盡可能避免使用永久的 Cookie。考慮對 Cookie 中的信息加密??紤]將 Cookie 的 Secure 和 HttpOnly 屬性設(shè)置為 true。</p><p> 9.防止拒絕服務(wù)威脅</p><p> 惡意用戶危害
44、您的應(yīng)用程序的一種間接方式是使其不可用。惡意用戶可以使應(yīng)用程序太忙而無法為其他用戶提供服務(wù),或者僅僅使應(yīng)用程序出現(xiàn)故障。請遵循這些指導(dǎo): 關(guān)閉或釋放您使用的任何資源。例如,在使用完畢后,始終關(guān)閉數(shù)據(jù)連接和數(shù)據(jù)讀取器,而且始終關(guān)閉文件。使用錯誤處理機制(例如,try/catch 塊)。包含 finally 塊,以便萬一失敗就可以在其中釋放資源。將 IIS 配置為使用調(diào)節(jié),這樣可以防止應(yīng)用程序消耗過多的 CPU。 在使用或存儲用戶輸入之前,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 外文文獻翻譯---web 應(yīng)用程序的基本安全做法
- 外文翻譯--mysql和jsp的web應(yīng)用程序
- 基于asp的web應(yīng)用程序開發(fā)外文翻譯
- 畢業(yè)論文外文翻譯-mysql和jsp的web應(yīng)用程序
- web應(yīng)用程序安全漏洞挖掘的研究
- [雙語翻譯]安卓外文翻譯--android應(yīng)用程序的安全性
- 外文翻譯---應(yīng)用程序基礎(chǔ)android developers
- Web應(yīng)用程序安全框架研究和實現(xiàn).pdf
- Web應(yīng)用程序安全漏洞挖掘的研究.pdf
- [雙語翻譯]安卓外文翻譯--android應(yīng)用程序的安全性(英文)
- WEB應(yīng)用程序安全設(shè)計及應(yīng)用技術(shù)的研究.pdf
- 計算機畢業(yè)設(shè)計外文翻譯--面向 java web 應(yīng)用程序的 openid
- 2016年安卓外文翻譯--android應(yīng)用程序的安全性
- web應(yīng)用程序設(shè)計(aspnet)
- web應(yīng)用程序完全測試指南
- 外文翻譯-基于s2sh 的web應(yīng)用程序框架的設(shè)計和實現(xiàn)
- [雙語翻譯]安卓外文翻譯--android應(yīng)用程序的安全性中英全
- web應(yīng)用程序設(shè)計專業(yè)
- 《網(wǎng)絡(luò)信息安全》專業(yè)技能實訓(xùn)-web應(yīng)用程序安全
- mfc基本應(yīng)用程序的建立
評論
0/150
提交評論