威脅:拒絕服務攻擊(dos)
由於某種特殊的情況出現,導致系統無法為合法的使用者提供訪問。
對策:高安全意識
導致dos的原因有很多,有些是系統、網路層面的,也有來自於應用系統本身的原因。沒有乙個確切的
辦法能解決所有的問題。因此我覺的還是要高的安全意識來發現可能的問題。
a. 網路層面的dos攻擊種類繁多,這和tcp/ip協議本身的實現有關。如果socket的實現不恰當也會引入此
類攻擊。乙個常見的例子是,socket的等待佇列設定的太小。如果有人故意的開啟很多的半連線,就會造
成其他使用者無法連線。
b. 多使用者系統中,意味著這些使用者要共享系統的資源。如記憶體,硬碟等。因此需要從這個方面來注意。
當乙個使用者使用過大的記憶體或硬碟空間時,可能就造成了其他使用者無法使用這些資源,甚至導致系統崩潰。
威脅:不公平的服務
現在常見的一種情況是,一些惡意的使用者通過特殊的軟體,來和其他使用者搶系統提供的資源。如:**
商品,火車票等。從而導致系統不能為其他使用者提供公平的服務。
對策:驗證碼(同上)
俗話說「病從口入」,軟體系統也一樣,下面的一些威脅,都是從使用者輸入開始的。
威脅:sql注入(sql injection)
威脅:緩衝區溢位(buffer overflow)
威脅:跨站指令碼(xss)
此三中攻擊手段是目前很常用,殺傷力很大的手段。具體的原理,大家可以在網上找到很多文章。
對策:提高安全意識,對待使用者輸入緊小慎微
不要假設使用者輸入的是正確的資料,不要認為使用者都是無知的。據調查多數的攻擊行為都來自於內部。因此
對使用者的輸入要進行嚴格的約束和檢查。
a. 訪問控制相關的邏輯資訊不要放在客戶端。
b. 不要相信客戶端的輸入檢查程式,必須在伺服器端再次做輸入合法性檢查。
對策:使用專業的軟體來阻止攻擊
對使用者的輸入進行嚴格的檢查也並不一定能有很好的效果。如果系統的安全需求較高,請向安全專家進行
諮詢。並配以專業的軟體來預防此類攻擊的發生。
– 資料庫系統
資料庫中儲存著系統的核心-資料,而很多攻擊者的目標也是這些資料。因此要對資料庫做嚴格的安全措施。
a. 系統層面的安全
b. 網路層面的安全
c. 資料庫本身的安全加固
這些安全措施和軟體開發本身沒有太大的關係,因此不在這裡詳細描述了。
d. 值得一提的是,資料庫的帳號管理。資料庫資料資訊被盜的主要威脅來自於sql注入和特權帳號被濫用。
都和帳號管理相關。因此必須根據前面提到的口令管理策略,做好資料庫的帳號管理。曾經碰到過程式設計師
將oracle的口令寫入**中,而導致無法對資料庫進行加固的情況。這是非常錯誤的做法。
另外要注意,良好的帳號管理只能減少sql注入帶來的損失,沒辦法阻止sql注入的發生,因此還是要
從輸入檢查上入手,去杜絕sql注入的發生。
啟蒙與非啟蒙
啟蒙與非啟蒙 昨晚,和朋友打完 又讓我感覺到了人與人之間的某些差異。昨晚還算睡得好,雖然晚上明顯的肚子有些餓了的。肚子餓,又讓我想起了束縛 不單單是吃對生活的束縛,更多的是物質對人的束縛。我對與物質與意識的看法,總是不能夠給自己乙個全面地合理的解釋,往往因為這些問題而進入一種空洞的狀態。顯然,這些問...
兒童啟蒙程式設計
程式設計師是乙個不停學習的崗位,你需要每天除了工作以外,花一定的時間了解新的技術或正在使用的技術的原理,這樣才能一直提高,不然,可能會被淘汰。格物斯坦表示 在你了解 以後,你還需要了解邏輯,就等於你要熟悉你所從事的這個領域及行業,比如你做教育,那就要熟悉教育行業的業務,做財務,就要熟悉財務的邏輯,這...
防汛安全知識
一 雨季行車注意事項和技巧 1 見到積水處莫左閃右避。看到水就閃,或者馬上踩剎車放慢速度,這是一般人的通病。實際上這兩種方法都非常危險。左閃右避的壞處是,令後面的司機不知道該怎麼反應,意外很容易發生。其實水深大約15厘公尺左右,根本不會對汽車有任何影響,完全可以用正常的車速行駛,不需要擔心水進入車內...