bak文件帶來的災難
發表時間:2024-05-25 來源:明輝站整理相關軟件相關文章人氣:
[摘要]第二章 bak文件帶來的災難 /** 作者 :慈勤強 Email:
[email protected] 最后修改:2004-10-03 **/ 一日,在網上與一朋友閑聊,朋友是做網站開發的,以前也與其討論過技術方面的問題, 只是好久沒有在網上見到了,就好像人間蒸發了一樣。 “Steven,最近忙些什...
第二章 bak文件帶來的災難
/**
作者 :慈勤強
Email:
[email protected] 最后修改:2004-10-03
**/
一日,在網上與一朋友閑聊,朋友是做網站開發的,以前也與其討論過技術方面的問題,
只是好久沒有在網上見到了,就好像人間蒸發了一樣。
“Steven,最近忙些什么呢?”,朋友先問到。
“沒什么,在家下崗待業呢,呵呵”,我答道。
“哦,那正好,我們最近剛剛完成了一個政府部門的信息系統,現在正處于試運行階段,
你看看,給點意見,^-^”,朋友回答道。
“你這家伙,我都下崗了,你也不安慰一下,呵呵”
“你還怕找不到工作呀,^-^”
“呵呵,那好,不過別忘記請客啊....”
......
一陣調侃之后,朋友把網址發了過來。
于是,我打開這個網站一看,很清新的一個網站,看起來簡單但不失實用,樸素但不失
悅目,挺不錯的。再看一下,這是一個用Asp編寫的動態網站,那猜想數據庫應該是SQL Server
的吧。
“不錯啊,這不是挺好的嗎?”我又回了朋友一句。
“還行吧,過兩天就要驗收了,^-^”
“哦,那你們項目組幾個寫程序的人啊?”
“3個人,做了三個月呢”,聽得出來,他們還是傾注了不少的精力的。
“哦,那你們用什么開發工具,如何進行版本控制呀?”,我是比較關注項目過程的。
“嗨,不怕你笑話,我們根本就沒有進行什么版本控制,每個人負責幾個欄目,到時候
一拼就可以了。 我們就用Editplus開發asp。”
這么大個系統,竟然連基本的版本控制都沒有,真是不可思議,也不知道他們是怎么
接到這個政府部門的項目的?
我暗自心想,突然想起了Editplus,這是一個非常小巧,實用的文本編輯器,我也一直
用它。可是對于Editplus,默認的情況下,它都會在當前目錄下生成一個當前文件的備份,
比如你在寫一個member.asp的程序,保存的時候,Editplus會自動生成一個備份文件,
member.asp.bak。所以在寫完程序,往外發布的時候,如果沒有完全刪除這些備份文件,那么
隱患則是巨大的。
他們不會存在這個問題吧,我心想。
我邊想,邊順手在一個正在訪問的文件News.asp文件后面加上一個.bak,也就是我訪問
的文件變成了http://網址/News.asp.bak, 回車一看,果不其然,這個文件的源代碼
就顯示了出來,部分代碼如下:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<!--#include file="include/conn.asp" -->
<!--#include file="include/function.asp" -->
<%
這里是他們的asp源代碼
%>
一看,就知道conn.asp是連接數據庫的文件,那就看看他們用的什么數據庫吧,訪問
http://網址/include/conn.asp.bak,結果如下:
Call ConnectSQL()
Sub ConnectSQL()
Dim strSqlServer,strUserName,strPassword,strDatabase
Dim strConn
strSqlServer = "210.51.*.*"
strUserName = "sa"
strPassword = "!K)^$XN)*723L&%$fg6%^k"
strDatabase = "ZhenJin"
strConn = "Driver={SQL Server};Server=" + strSqlServer + ";UID=" + strUsername
strConn = strConn + ";pwd=" + strPassword + ";Database=" + strDatabase
Set objConn = Server.CreateObject("ADODB.CONNECTION")
objConn.Open strConn
End Sub
通過這個文件,可以看出來,他們真的用的Sql Server數據庫,而且連接用戶是SA,這可是
Sql Server的最高權限用戶了,相當于系統的管理員權限。
看到這里,我就不忍心再往下看了,急忙跟朋友說明問題。
“你們寫完程序,Editplus生成的bak文件怎么不刪除呢?呵呵”,我問到。
“哦?不會存在這種低級問題吧,我做的都刪除了啊?”,朋友吃驚的回答到。
“那其他人寫的呢?你們系統做完了,不會連自己都沒有測試吧?”
“哦,那可能是別人沒有注意吧,我們只是進行了簡單的功能測試,時間太緊了”
..........
是啊,時間太緊了,給我的感覺是現在的項目沒有一個時間不緊的。現在好多網絡公司作出來的
項目甚至連自己都沒有進行很好的QA測試,就拿出來給客戶了,客戶發現問題,再提出來,他們再改。
實際上從長遠來講,這樣是得不償失的。