SQL攻擊,不是利用操作系統的BUG實現攻擊,而是利用程序員的疏忽,通過SQL語句,實現無賬號登陸,甚至篡改數據庫 常見的內存錯誤及其對策 1 內存未分配成功卻使用了它(accert判空) 2 內存分配雖然成功,但尚未初始化就引用它(錯誤原因:一是沒有初始化的概念;二是以為初始化全為零,導致引用錯誤(例如數組)) 3內存分配成功並且已經初始化,但操作越過了內存的邊界 例如在使用數組時,經常發生下標多1 或者少1 4忘記了釋放內存,造成內存洩露。Malloc、free必須配對使用 5 釋放了內存卻繼續使用它。 有三種情況: A 程序中的調用關系過於復雜 B 函數的return 語句寫錯了,(棧內存) C 使用free或delete釋放了內存後,沒有將指針設置為NULL 釋放內存之後立即將指針設置為NULL,防止產生"野指針"