freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

某石油天然氣股份公司應(yīng)用系統(tǒng)開發(fā)安全管理通則(編輯修改稿)

2025-06-26 21:07 本頁面
 

【文章內(nèi)容簡(jiǎn)介】 何用戶如果希望訪問應(yīng)用系統(tǒng)中的某一個(gè)部分,則必須通過統(tǒng)一的且唯一的認(rèn)證授權(quán)方式以及流程。 人員職責(zé)和權(quán)限的定義 由于不是所有的人員對(duì)于某一個(gè)應(yīng)用系統(tǒng)都具有同樣的訪問或使用的權(quán)限,因此系統(tǒng)必須具有基于人員職責(zé)的用戶授權(quán)管理以確保每個(gè)用戶可以訪問到其權(quán)利范圍內(nèi)的應(yīng)用系統(tǒng)部分。同樣的,也要確保每個(gè)用戶無法訪問其權(quán)限范圍以外的應(yīng)用系統(tǒng)部分。 確保敏感系統(tǒng)的安全性 通過將應(yīng)用系統(tǒng)中敏感的信息保存在服務(wù)器端以進(jìn)行集中的加密的安全管理,確??蛻舳讼到y(tǒng)本身并不能存儲(chǔ)任何信息敏感的數(shù)據(jù)。 確保訪問層的安全性 應(yīng)用系統(tǒng)不僅僅要確保系統(tǒng)模塊本身的安全性,同時(shí)也要考慮模塊與模塊之間的通訊的安全性。這種模塊與模塊之間的安全性不僅僅包括了應(yīng)用系統(tǒng)內(nèi)部模塊之間的安全,也包括了應(yīng)用系統(tǒng)內(nèi)部模塊和外部模塊之間的安全性,如主機(jī)和客戶端之間通訊的安全性。服務(wù)器和服務(wù)器間通訊的安全性,本地系統(tǒng)和異地系統(tǒng)之間通訊的安全性。 確保日志管理機(jī)制健全 要求建立可以根據(jù)情況自由設(shè)置的日志管理機(jī)制,也就是說日志紀(jì)錄的范圍和詳細(xì)程度可以根據(jù)需求自行定制,且可以實(shí)現(xiàn)在應(yīng)用系統(tǒng)使用過程中進(jìn)行日志的定制和記錄。 保留所有系統(tǒng)開發(fā)相關(guān) 的程序庫的更新審核紀(jì)錄。 新系統(tǒng)的容量規(guī)劃 容量規(guī)劃是指確定系統(tǒng)的總體規(guī)模,性能和系統(tǒng)彈性。 容量規(guī)劃的具體內(nèi)容可能有所不同,但一般需要考慮以下方面: a) 系統(tǒng)的預(yù)期存儲(chǔ)容量和在給定的周期里面獲取生成和存儲(chǔ)的數(shù)據(jù)量。 b) 在線進(jìn)程的數(shù)量和估計(jì)可能的占用資料 c) 對(duì)于系統(tǒng)和網(wǎng)絡(luò)的相應(yīng)時(shí)間和性能,即端對(duì)端系統(tǒng) d) 系統(tǒng)彈性要求和設(shè)計(jì)使用率 峰值,槽值和平均值等 e) 安全措施例如加密解密數(shù)據(jù)對(duì)系統(tǒng)的影響。 f) 24x7 運(yùn)作要求和可接受的系統(tǒng)宕機(jī)次數(shù)(維護(hù)或者設(shè)備更新導(dǎo)致的必須性宕機(jī)) 規(guī)劃容量的時(shí)候關(guān)于系統(tǒng)使用的信息了解得越多越好。近來 ,由于互聯(lián)網(wǎng)站得使用以指數(shù)形式增長(zhǎng),容量規(guī)劃變動(dòng)效果不是非常顯著,有時(shí)甚至毫無用處。原因在于很難估計(jì)實(shí)際的負(fù)載。在容量估計(jì)的時(shí)候需要盡量將情況設(shè)想得復(fù)雜一些。 錯(cuò)誤 !文檔中沒有指定樣式的文字。 14 系統(tǒng)開發(fā)階段安全規(guī)范 系統(tǒng)開發(fā)語言安全規(guī)范 程序員可以使用很多指導(dǎo)規(guī)范來防止應(yīng)用程序中的普通的安全問題。其中許多可以應(yīng)用于任何一個(gè)編程語言,但某些是針對(duì)特定的語言的。特定語言的指導(dǎo)規(guī)范主要集中在 Perl, Java 和 C/C++語言。大多數(shù)情況下,一般的錯(cuò)誤可以通過下功夫或者對(duì)基本的問題有很好的理解來避免。這些本可以避免的錯(cuò)誤常常會(huì)導(dǎo)致很多安全漏洞, 從而威脅信息的保密性、完整性和可用性。 通用規(guī)范 輸入驗(yàn)證 在客戶機(jī) /服務(wù)器環(huán)境下,進(jìn)行服務(wù)端的驗(yàn)證而不是客戶端的驗(yàn)證(例如基于Javascript 的驗(yàn)證)。通過在客戶端和服務(wù)器之間放置一個(gè)代理服務(wù)器,可以很容易繞過客戶端驗(yàn)證。有了代理服務(wù)器,攻擊者可以在數(shù)據(jù)被客戶端“驗(yàn)證”后修改數(shù)據(jù)(與“ maninthemiddle”攻擊類似)。 在實(shí)際的校驗(yàn)中,輸入校驗(yàn)首先定義一個(gè)有效(可接受)的字符集,然后檢查每個(gè)數(shù)據(jù)的字符是否在有效范圍內(nèi)。如果輸入中包含無效的字符,應(yīng)用程序應(yīng)該返回錯(cuò)誤頁面并說明輸入中包含無效 字符。這樣進(jìn)行驗(yàn)證的原因是定義無效的字符集比較困難,并且一些不應(yīng)該有效的字符通常不會(huì)被指出。 另外,邊界檢查(例如字符串的最大長(zhǎng)度)應(yīng)該在字符有效性檢查以前進(jìn)行。邊界分析可以防止大多數(shù)緩沖區(qū)溢出漏洞。 必須提到的是從環(huán)境變量獲得的數(shù)據(jù)也需要進(jìn)行驗(yàn)證。同時(shí)避免在環(huán)境變量中存放敏感數(shù)據(jù)(例如密碼)。某些 Unix 系統(tǒng)(例如 FreeBSD)包含 ps 命令,可以讓用戶看到任何當(dāng)前進(jìn)程的環(huán)境變量,這常常會(huì)暴露保密性信息。 SQL 語句 如果應(yīng)用程序需要連接后端數(shù)據(jù)庫,使用存儲(chǔ)過程而不要在代碼中使用 SQL語句。使用程序以外的 嵌入在代碼中的 SQL 語句調(diào)用特別危險(xiǎn)。難以防止攻擊者使用輸入域或者配置文件(由應(yīng)用程序載入)來執(zhí)行嵌入式的 SQL 攻擊。當(dāng)然,輸入驗(yàn)證有助于緩解這種風(fēng)險(xiǎn)。 注釋代碼 (mented code) 當(dāng)應(yīng)用程序在實(shí)際環(huán)境中開始應(yīng)用時(shí),應(yīng)該刪除所有的注釋代碼。注釋代碼是用來調(diào)試或者測(cè)試的,它們不是最終應(yīng)用程序的一部分。無論如何應(yīng)該在實(shí)際的環(huán)境中刪除它們來避免意外的執(zhí)行(一般注釋標(biāo)識(shí)被刪除后就無法激活休眠的代碼,但還是存在可能性的,所以強(qiáng)烈建議執(zhí)行這項(xiàng)工作)。 錯(cuò)誤消息 所有為用戶顯示的錯(cuò)誤信息都不應(yīng)該暴露任何關(guān) 于系統(tǒng)、網(wǎng)絡(luò)或應(yīng)用程序的敏感信息。如果可能的話,最好使用包含編號(hào)的一般的錯(cuò)誤信息,這種信息只有開發(fā)者和 /或支持小組才能理解。一般的錯(cuò)誤信息的例子是“發(fā)生了錯(cuò)誤(代碼 1234),請(qǐng)您與系統(tǒng)維護(hù)部門聯(lián)系。” URL 內(nèi)容 對(duì)于 web 應(yīng)用,不要在 URL 上暴露任何重要信息,例如密碼、服務(wù)器名稱、 IP地址或者文件系統(tǒng)路徑(暴露了 web 服務(wù)器的目錄結(jié)構(gòu))。這些信息可以在攻擊時(shí)使用。例如下面就是一個(gè)不安全的 URL: PASSWORDamp。file=/home/USER/ 設(shè)置 PATH 變量 設(shè)置 PATH 為一個(gè)已知的值,而不是僅僅使用啟動(dòng)時(shí)的缺省值。攻擊者可以在攻擊應(yīng)用程序時(shí)使用 PATH 變量,例如試圖執(zhí)行一個(gè)任意的程序。這些也可以應(yīng)用于大多數(shù)其他的語言。 Perl語言安 全規(guī)范 多年以來, Perl 已經(jīng)成為用于系統(tǒng)管理和 Web CGI 開發(fā)的功能最強(qiáng)的編程語言之一(幾乎可以使用 Perl 做任何功能的程序)。但其擴(kuò)展應(yīng)用,即作為 Inter 上CGI 的開發(fā)工具,使得它經(jīng)常成為 web 服務(wù)器上的攻擊目標(biāo)。另外,大多數(shù) CGI腳本有著比一般用戶更高的權(quán)限,導(dǎo)致它更容易受攻擊。下面列舉了一些開發(fā)者(特別是 CGI 程序員)可以使用的主動(dòng)的預(yù)防性的措施來增強(qiáng) Perl 代碼的整體安全性(請(qǐng)注意:這不是 web 服務(wù)器 CGI 腳本安全性的指導(dǎo)原則)。 Taint 驗(yàn)證 Perl 版本 包含一個(gè)叫做 Taint Checking 的數(shù)據(jù)驗(yàn)證措施。如果起用該功能,它就不允許通過用戶輸入(任何程序外的輸入)來操縱其他的外部程序(例如通過管道將數(shù)據(jù)導(dǎo)入另一個(gè)程序執(zhí)行))。一般而言,程序員不能信任輸入腳本和程序的數(shù)據(jù)(叫做 Tainted 數(shù)據(jù) ),因?yàn)闊o法保證它不會(huì)產(chǎn)生危害(有意或者無意的)。 Taint 驗(yàn)證可以通過在命令行參數(shù)加入“ T”來開啟。例如你可以在 Perl 腳本的第一行這樣加入“ T”: !usr/bin/perl5 T Tainted 數(shù)據(jù)包括命令行參數(shù)、環(huán)境變量和來自文件的數(shù)據(jù)。引用 tainted 數(shù)據(jù)的變量也成 為 tainted 數(shù)據(jù)。如果腳本試圖通過不安全的方式來使用 tainted 數(shù)據(jù)會(huì)產(chǎn)生一個(gè)致命錯(cuò)誤(對(duì)這種情況稱為“不安全的依賴” (Insecure dependency)或者其他的說法)。啟用 tainted 驗(yàn)證在有些情況下會(huì)導(dǎo)致腳本停止運(yùn)行,常 錯(cuò)誤 !文檔中沒有指定樣式的文字。 16 常是由于 Perl 解釋器要求所有腳本引用的外部程序的完全路徑必須在 PATH環(huán)境變量中列出,同時(shí) PATH 中包含的每個(gè)目錄除了目錄的所有者及相應(yīng)的所有者用戶組外無法修改。 Taint 驗(yàn)證對(duì)于環(huán)境比較敏感,這就可能會(huì)導(dǎo)致大多數(shù)程序員不愿使用它,但是只要可能的話,應(yīng)該使用 taint 驗(yàn) 證,特別是代碼執(zhí)行其他程序功能時(shí)(例如在 CGI 腳本的情況下)。 安全模塊 如果不但輸入數(shù)據(jù)不可信而且實(shí)際的代碼也不可信會(huì)產(chǎn)生什么情況?例如用戶從網(wǎng)站上下載了一個(gè) ActiveX 控件,而它實(shí)際是一個(gè)特洛伊木馬 (Trojan horse)。這種情況下 taint 驗(yàn)證就不起作用。安全模塊讓程序員可以在 Perl 腳本中將不同的代碼模塊與安全對(duì)象聯(lián)系。每個(gè)安全對(duì)象對(duì)于運(yùn)行的每塊代碼建立了一個(gè)限制的環(huán)境。這與 chroot 在一個(gè)進(jìn)程中只能在整體目錄結(jié)構(gòu)的一個(gè)子目錄中運(yùn)行類似。而 saft 對(duì)象限制 perl 代碼只能在 perl 包結(jié)構(gòu)的 某些特定包中運(yùn)行。如何使用安全模式超出了本文的范圍,但是程序員應(yīng)該在任何時(shí)候盡量使用這一功能。 警告參數(shù) (w) 使用 w 參數(shù)可以在 Perl 解釋腳本時(shí)顯示所有的警告信息。警告可以對(duì)以下情況產(chǎn)生:只使用了一次的變量或者完全沒有使用過得變量,未定義的文件句柄,未關(guān)閉的文件句柄,或者將非數(shù)值變量傳遞到數(shù)據(jù)變量。該功能不是針對(duì)安全處理的,但是可以有助于調(diào)試直接或者間接對(duì)安全有危害的錯(cuò)誤。一般推薦總是使用 w 參數(shù)??梢栽?taint 驗(yàn)證時(shí)在第一行這樣使用 w 參數(shù): !usr/bin/perl5 Tw Java 語言安全規(guī)范 自從 1995 年發(fā)布以來, Java 成為簡(jiǎn)單或者復(fù)雜網(wǎng)絡(luò)應(yīng)用的有效編程語言。它在設(shè)計(jì)時(shí)充分考慮了安全問題,因此它具有的限制特征有:收集不再使用的內(nèi)存碎片的垃圾收集器,嚴(yán)格的“ sandbox”安全模型,以及在特定主機(jī)上限制應(yīng)用程序的活動(dòng)的安全管理器。下面的使用中相關(guān)的規(guī)范: 不要在標(biāo)準(zhǔn)輸出上打印消息 在實(shí)際的 Inter 系統(tǒng)中避免使用 ()或者 ()打印日志和錯(cuò)誤消息,原因是當(dāng)消息打印到標(biāo)準(zhǔn)輸出時(shí),無法立即確定消息發(fā)生的地點(diǎn)。 而且它有可能將敏感信息透露給攻擊者。 封裝 Java 中,如果沒有使用訪問標(biāo)識(shí)符 (access modifier(private、 protected 或者 public))來聲明類、方法和屬性,那么它的默認(rèn)訪問范圍是包,并且同一包中的所有類都能訪問它。必須記住雖然包有封裝功能,但它只有在每部分加載到包的代碼都由授權(quán)用戶控制時(shí)才起作用。惡意的用戶可以加入他們自己的類,從而對(duì)于包中的所有類、方法和屬性都有完全的訪問權(quán)限。 Java 的政策文件支持兩種控制包訪問權(quán)限的前綴。 accessClassInPackage defineClassInPackage 所有標(biāo)準(zhǔn)庫中的類都默認(rèn)是可以公共訪問的(除了由“ sun”開頭的類)。為了保證一個(gè)包的安全性,必須修改 ${JAVA HOME}/jre/lib/security 文件夾中的 文件。該文件中的重要行是: =sun. 雖然該方法有作用,但是也有問題。例如程序員在 文件中定義包的安全時(shí)必須十分小心。在 中的值是字符型的,“ sun.”將保護(hù)“ ”等包,但是不會(huì)對(duì) “ sun”或者“ sunshine”等包進(jìn)行保護(hù)。 另一個(gè)方法是使用 JAR 密封 (sealing) 。 JAR(Java ARchive)文件是一些類的打包壓縮格式的文件,與常用的 ZIP 格式類似。如果從一個(gè)密封 (sealing)的 JAR 文件中加載一個(gè)類時(shí),隨后同一個(gè)包的類只能從該 JAR 文件加載。為了起用密封(sealing),必須在建立 JAR 文件時(shí)這樣設(shè)置密封 (seal)參數(shù): Sealed: true 使用密封 (sealing)的 JAR 文件比權(quán)限 (permission) 設(shè)置更好,因?yàn)樗恍枰惭b安全管理器 (security manager)。 政策文件 Java 內(nèi)建的安全管理器是對(duì)應(yīng)用程序進(jìn)行限制的一個(gè)方便的工具。很多情況下需要編制一個(gè)定制的安全管理器, 及以后的版本提供了 描述 設(shè)置的方法而不是 實(shí)施它們。 這是通過 Java 政策文件實(shí)現(xiàn)的。可以用政策文件以相對(duì)模塊化的方式控制文件系統(tǒng)和網(wǎng)絡(luò)的訪問。例如可以限制應(yīng)用程序只能修改名字是foo 的文件。 推薦使用 Java 政策文件和安全管理器而不是重新創(chuàng)建一個(gè)類或者系統(tǒng)來限制對(duì)主機(jī)和網(wǎng)絡(luò)的訪問。 C/C++ 語言安全規(guī)范 C 本質(zhì)上是不安全的編程語言。例如如果不謹(jǐn)慎 使用的話,其大多數(shù)標(biāo)準(zhǔn)的字符串庫函數(shù)有可能被用來進(jìn)行緩沖區(qū)攻擊或者格式字符串攻擊。但是,由于其靈活性、快速和相對(duì)容易掌握,它是一個(gè)廣泛使用的編程語言。下面是針對(duì)開發(fā)安全的 C 語言程序的一些規(guī)范。 緩沖區(qū)溢出 避免使用不執(zhí)行邊界檢查的字符串函數(shù),因?yàn)樗鼈兛赡鼙挥脕磉M(jìn)行緩沖區(qū)溢出攻擊。下面是應(yīng)該避免使用的函數(shù)。同時(shí),也列出了每個(gè)函數(shù)相應(yīng)的比較安全的替換方式。 ? 不使用 strcpy(),使用 strncpy() 錯(cuò)誤 !文檔中沒有指定樣式的文字。 18 ? 不使用 strcat(),使用 strncat() ? 不使用 sprintf(),使用 snprintf() ? 不使用 gets(),使用 fgets() 在上面的前三個(gè)中函數(shù)中,每個(gè)替代函數(shù)的“ n”表示了使用的緩沖區(qū)的大小。最后一個(gè)函數(shù)的“ f”,表示格式,它允許用戶指定期望的輸入的格式。這些替換方程強(qiáng)制程序員定義使用的緩沖區(qū)的尺寸以及確定輸入的類型。 格式化字符串攻擊( Format String Attack)
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1