本 期 焦 點
  • 程式設計師小心了---SQL Injection
  • 多個條件的搜尋
  • 暢所欲言討論版
  • 發~~發佈出去了!?
    下 載 排 行 榜
  • 台北人會員留言版 V1.95
  • 小馬會員管理
  • 好手Fashion留言版
  • 藍色小舖新聞程式
  • KiNg繁體中文化xp多用戶留言版V_GB2.0
    新 進 程 式
  • 東東跳蚤拍賣網討論區
  • 暢所欲言討論版
  • 台北人會員留言版V2.50
  • zizzcat星座
  • simon-KM知識管理
    網 頁 小 技 巧
  • 在網頁中崁入media player 7 物件
  • 即時計算表單中某文字欄位的字元數
  • 避免別人把你的網頁用frame包起來
    優 值 廣 告


    ■ 訂 閱 電 子 報
  • 如何取消訂閱電子報
  • 如果您不願意再收到小舖電子報,請至小舖先登入會員後,再選擇會員專區中的修改個人資料,將(是否願意接受本站電子報?)這一項修改為(不願意)即可,本報如造成您的困擾,小舖在此對您致上十二萬分的歉意。
    ------頭版新聞------
    藍色小舖電子報( 第002期五月號 2002-05-22) 25000份
    程式設計師小心了---SQL Injection
            最近非常熱門的一個話題[資料隱碼]SQL Injection,相信這個名詞令很多網友非常憂心,不知道自己的網站會不會成為下一個受害的對象,不怕,其實只要有好的防範措施相信下一個受害者一定不是自己。何謂[資料隱碼]攻擊,簡單的說就是利用網頁程式設計者對使用者輸入內容沒有限制所造成的安全漏洞,進而利用SQL語法直接或間接造成資料庫及伺服器之危害。如何防範[資料隱碼]攻擊,這裡提供幾個防範之道:
    (1). 過濾所有sql查詢參數,包括 "select"、"create"、"update"、"delete"、"insert"、"drop"、"--"、" ' "等加以替換或拒絕。
    (2). 駭客可能會故意鍵入錯誤資料以探知網頁是否有處理錯誤的能力,因此在網頁程式中需加入"Error Handling 錯誤控制"將不正確之資料輸入導向警告畫面。  
    (3). 大部分的程式設計師為圖方便都以sa或相同權限之帳號登入資料庫,如此當駭客侵入時也能輕易擁有管理權限,造成資料庫的重大危害,因此對於資料庫系統的存取權限應嚴加設定,僅允許使用者查詢或更新自己的資料。  
    (4). 當傷害已造成時,應該要有紀錄以供追查,因此需開啟網站與資料庫之存取資料歷程紀錄,追查元兇,避免危害他人。
    希望大家在做了上述的防範措施後都能免除[資料隱碼]的危害,詳細資料請參閱:
    [ASP]資料隱碼的攻擊方法 (藍色小舖熱門話題)
    [資料隱碼]SQL Injection的源由與防範之道 (藍色小舖討論區精華)
    ------精選網頁小技巧------
     
    多個條件的搜尋 (2002/5/1)
    1. 把你的 sql select 切成三大部分:
    (1)第一段是 select 欄位 from 表格
    (2)第二段是 where 條件
    (3)第三段是後續的語法,如 order by 或 group by 或 having

    2. 那麼你會發現第一段與第三段幾乎不會改變,只有第二段[ where 條件]會因為
    使用者輸入查詢條件的多寡而有所變動,這時只要依序判斷該條件是否有輸
    入,即可決定要不要在 sql select 中加這個 where 條件式

    3. 可是這裡有一個問題,第一個條件式要加 where,第二個以後的應該要加
    and,那怎麼判斷勒?其實不需要,只要在原本第一段的部分加上一個永遠成
    立的條件式,那麼由使用者輸入的查詢條件就只要帶 and 就可以了,通常這
    部分會用 where 主鍵值 is not null,primary key 不應該有 null 值出現吧!

    4. 最後把這三段字串組合起來,就是你要的查詢語法了

    範例:

    dim strSQL
    dim strSelect, strWhere, strOrder

    '假設 pkey 是 table 的 primary key
    strSelect = "select * from 資料表 where (pkey in not null) "
    strOrder = "order by pkey asc "
    strWhere = ""

    '搜尋條件有四個,依序判斷是否有輸入
    if request.form("name") <> "" then
      strWhere = strWhere & "and (col_name = '" & request.form("name") & "') "
    end if
    if request.form("phon") <> "" then
      strWhere = strWhere & "and (col_phon = '" & request.form("phon") & "') "
    end if
    if request.form("address") <> "" then
      strWhere = strWhere & "and (col_address = '" & request.form("address") & "') "
    end if
    if request.form("school") <> "" then
      strWhere = strWhere & "and (col_school = '" & request.form("school") & "') "
    end if

    '最後把三段字串加起來就是你要的查詢語法,不難吧!!
    strSQL = strSelect & strWhere & strOrder


    提供者: LetGo(ron0215@iris.seed) [校稿:捨得資訊 ]

    其他本週精華
    ADO跟ODBC之間的關係 (2002/4/15)
    將數個欄位數值即時作加總並顯示於另一欄位裡 (2002/4/15)
    強迫下載jpg檔 (2002/4/12)
    讀取radio裡的資料(2002/4/11)
    ------新進程式介紹------
     
    ◎暢所欲言討論版

    感謝會員正義之師提供暢所欲言討論版

    此系統特點:
    (1)因為使用文字檔資料庫,所以速度快又效率高。
    (2)可網友回覆,且版主具有快速刪除的能力,就算被洗版也可以很快做處理。
    (3)程式小巧易架設。
    (4)可輕易修改版面。
    (5)最近回覆的主題將會拉到前面,使之沒有石沉大海的主題。
    (6)管理員具有查看IP的功能,一般網友則沒有。

    詳情請到會員自製上傳區的討論區類型下載

    ------幕後剪影------
     
    ◎發~~發佈出去了!?

    小編這次因為外務繁重不小心耽誤到小舖電子報的發刊,有負大家所扥,對小舖團隊深感歉意,本想請大家吃噸好的,以表示悔過之意,無奈口袋空空又面臨無錢繳稅的困境,只好請大家暫時忍耐一下,等小編荷包飽飽再請大家去吃噸粗飽的(可能要等中彩券才有辦法,因為小編是個愛寫程式又寫不快的窮光蛋),當然下一期一定會準時出刊,以報答小舖的知遇之恩 ^_^。

    藍色小舖電子報內容 由 藍色小舖 提供
    [藍色小舖發行]--版權所有, 歡迎完整轉寄
    |
    |
    |
    |
    |


    若需任何服務
    請洽客服信箱:
    webmaster@blueshop.com.tw