bak文件帶來(lái)的災(zāi)難
發(fā)表時(shí)間:2024-05-25 來(lái)源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]第二章 bak文件帶來(lái)的災(zāi)難 /** 作者 :慈勤強(qiáng) Email:cqq1978@Gmail.com 最后修改:2004-10-03 **/ 一日,在網(wǎng)上與一朋友閑聊,朋友是做網(wǎng)站開發(fā)的,以前也與其討論過技術(shù)方面的問題, 只是好久沒有在網(wǎng)上見到了,就好像人間蒸發(fā)了一樣。 “Steven,最近忙些什...
第二章 bak文件帶來(lái)的災(zāi)難
/**
作者 :慈勤強(qiáng)
Email:cqq1978@Gmail.com
最后修改:2004-10-03
**/
一日,在網(wǎng)上與一朋友閑聊,朋友是做網(wǎng)站開發(fā)的,以前也與其討論過技術(shù)方面的問題,
只是好久沒有在網(wǎng)上見到了,就好像人間蒸發(fā)了一樣。
“Steven,最近忙些什么呢?”,朋友先問到。
“沒什么,在家下崗待業(yè)呢,呵呵”,我答道。
“哦,那正好,我們最近剛剛完成了一個(gè)政府部門的信息系統(tǒng),現(xiàn)在正處于試運(yùn)行階段,
你看看,給點(diǎn)意見,^-^”,朋友回答道。
“你這家伙,我都下崗了,你也不安慰一下,呵呵”
“你還怕找不到工作呀,^-^”
“呵呵,那好,不過別忘記請(qǐng)客啊....”
......
一陣調(diào)侃之后,朋友把網(wǎng)址發(fā)了過來(lái)。
于是,我打開這個(gè)網(wǎng)站一看,很清新的一個(gè)網(wǎng)站,看起來(lái)簡(jiǎn)單但不失實(shí)用,樸素但不失
悅目,挺不錯(cuò)的。再看一下,這是一個(gè)用Asp編寫的動(dòng)態(tài)網(wǎng)站,那猜想數(shù)據(jù)庫(kù)應(yīng)該是SQL Server
的吧。
“不錯(cuò)啊,這不是挺好的嗎?”我又回了朋友一句。
“還行吧,過兩天就要驗(yàn)收了,^-^”
“哦,那你們項(xiàng)目組幾個(gè)寫程序的人?”
“3個(gè)人,做了三個(gè)月呢”,聽得出來(lái),他們還是傾注了不少的精力的。
“哦,那你們用什么開發(fā)工具,如何進(jìn)行版本控制呀?”,我是比較關(guān)注項(xiàng)目過程的。
“嗨,不怕你笑話,我們根本就沒有進(jìn)行什么版本控制,每個(gè)人負(fù)責(zé)幾個(gè)欄目,到時(shí)候
一拼就可以了。 我們就用Editplus開發(fā)asp!
這么大個(gè)系統(tǒng),竟然連基本的版本控制都沒有,真是不可思議,也不知道他們是怎么
接到這個(gè)政府部門的項(xiàng)目的?
我暗自心想,突然想起了Editplus,這是一個(gè)非常小巧,實(shí)用的文本編輯器,我也一直
用它?墒菍(duì)于Editplus,默認(rèn)的情況下,它都會(huì)在當(dāng)前目錄下生成一個(gè)當(dāng)前文件的備份,
比如你在寫一個(gè)member.asp的程序,保存的時(shí)候,Editplus會(huì)自動(dòng)生成一個(gè)備份文件,
member.asp.bak。所以在寫完程序,往外發(fā)布的時(shí)候,如果沒有完全刪除這些備份文件,那么
隱患則是巨大的。
他們不會(huì)存在這個(gè)問題吧,我心想。
我邊想,邊順手在一個(gè)正在訪問的文件News.asp文件后面加上一個(gè).bak,也就是我訪問
的文件變成了http://網(wǎng)址/News.asp.bak, 回車一看,果不其然,這個(gè)文件的源代碼
就顯示了出來(lái),部分代碼如下:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<!--#include file="include/conn.asp" -->
<!--#include file="include/function.asp" -->
<%
這里是他們的asp源代碼
%>
一看,就知道conn.asp是連接數(shù)據(jù)庫(kù)的文件,那就看看他們用的什么數(shù)據(jù)庫(kù)吧,訪問
http://網(wǎng)址/include/conn.asp.bak,結(jié)果如下:
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
通過這個(gè)文件,可以看出來(lái),他們真的用的Sql Server數(shù)據(jù)庫(kù),而且連接用戶是SA,這可是
Sql Server的最高權(quán)限用戶了,相當(dāng)于系統(tǒng)的管理員權(quán)限。
看到這里,我就不忍心再往下看了,急忙跟朋友說明問題。
“你們寫完程序,Editplus生成的bak文件怎么不刪除呢?呵呵”,我問到。
“哦?不會(huì)存在這種低級(jí)問題吧,我做的都刪除了?”,朋友吃驚的回答到。
“那其他人寫的呢?你們系統(tǒng)做完了,不會(huì)連自己都沒有測(cè)試吧?”
“哦,那可能是別人沒有注意吧,我們只是進(jìn)行了簡(jiǎn)單的功能測(cè)試,時(shí)間太緊了”
..........
是啊,時(shí)間太緊了,給我的感覺是現(xiàn)在的項(xiàng)目沒有一個(gè)時(shí)間不緊的,F(xiàn)在好多網(wǎng)絡(luò)公司作出來(lái)的
項(xiàng)目甚至連自己都沒有進(jìn)行很好的QA測(cè)試,就拿出來(lái)給客戶了,客戶發(fā)現(xiàn)問題,再提出來(lái),他們?cè)俑摹?
實(shí)際上從長(zhǎng)遠(yuǎn)來(lái)講,這樣是得不償失的。