<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          從微盟36小時(shí)故障,談?wù)剶?shù)據(jù)安全這點(diǎn)事

          共 2809字,需瀏覽 6分鐘

           ·

          2020-02-26 23:21

          作者介紹

          findyi,騰訊、360碼農(nóng),前噠噠少兒英語(yǔ)技術(shù)VP,現(xiàn)任土豆教育CTO。


          早上爆出一條數(shù)據(jù)安全的大新聞,微盟被刪庫(kù)了.......大家先來(lái)看看新聞:


          816ff94d14badd1153c43da4915e5e0c.webp


          很震驚!很震撼!嚇得我趕緊召集全公司服務(wù)端小伙伴Review了我們所有的安全部署!?。?/span>


          徹底檢查完之后,我放心了,我們即便被刪庫(kù)也可以快速恢復(fù)!


          052fbc28ae86b20f0ad8beabb3642591.webp


          解決完隱憂之后,作為一個(gè)在業(yè)內(nèi)安全大廠360工作五年的偽安全人士,今天跟廣大做技術(shù)的小伙伴聊聊數(shù)據(jù)庫(kù)安全那點(diǎn)事:


          01事件復(fù)盤
          公告透露出兩個(gè)重大信息!我們來(lái)看看:
          第一,恢復(fù)時(shí)間長(zhǎng),公告是這么說(shuō)的:「和您一樣,我們度過(guò)了漫長(zhǎng)的36小時(shí),我們預(yù)計(jì)此次故障還會(huì)持續(xù)一段」。
          那么為什么需要這么久的時(shí)間來(lái)恢復(fù)?
          以我的經(jīng)驗(yàn)推測(cè),一定是生產(chǎn)環(huán)境的主備數(shù)據(jù)庫(kù)都被刪庫(kù)了!并且大概率應(yīng)該是做了rm -rf類型的極端操作。不用懷疑就是傳說(shuō)中的刪庫(kù)跑路!當(dāng)然影響是產(chǎn)生了,人肯定跑不了!
          大家可能要問(wèn)了,那數(shù)據(jù)庫(kù)恢復(fù)下不就好了嗎?沒(méi)這么簡(jiǎn)單!
          07512a5c50d756df56ba5d683b15b176.webp
          第二,更重要的信息!大家看看這句:「犯罪嫌疑人乃微盟研發(fā)中心運(yùn)維部核心工作人員賀某」。原來(lái)是內(nèi)部人員!
          那為什么一個(gè)普通運(yùn)維人員有如此大能量?

          很簡(jiǎn)單,不少互聯(lián)網(wǎng)的運(yùn)維人員基本都會(huì)有root權(quán)限。基本就是公司業(yè)務(wù)上帝級(jí)別的存在。
          說(shuō)實(shí)話,我做管理這么多年,對(duì)運(yùn)維崗位工作人員一直是格外尊敬彬彬有禮。當(dāng)然如果是大廠可以在安全方面做的更完善,數(shù)據(jù)庫(kù)操作權(quán)限分層分級(jí),就很難出現(xiàn)這種情況。
          現(xiàn)實(shí)是很多中小公司,運(yùn)維就那么幾個(gè)人,甚至一個(gè)人。對(duì)這樣的公司來(lái)說(shuō),責(zé)備團(tuán)隊(duì)沒(méi)做好權(quán)限管理就是正確的廢話。

          02防刪庫(kù)指南
          除了微盟這次安全事故,關(guān)于刪庫(kù)跑路,一直是互聯(lián)網(wǎng)的黑傳說(shuō)。

          IT界有一個(gè)老梗,某論壇的數(shù)據(jù)庫(kù)管理員抱怨自己老板一直虐待他,結(jié)果他一氣之下就刪庫(kù)跑路了……


          再假設(shè)一種情況,如果在服務(wù)器維護(hù)的時(shí)候不小心執(zhí)行了 rm -rf 命令……現(xiàn)在整臺(tái)服務(wù)器被刪光了腫么辦???


          71e3c795ea560bea2a09b155f8bdda5d.webp


          對(duì)于中小公司來(lái)說(shuō),想把權(quán)限做完善做復(fù)雜,基本沒(méi)有可能!想依賴運(yùn)維人員本身素質(zhì)和心理狀態(tài),那就是靠天吃飯!


          中小公司防刪庫(kù)真正的答案是:做好備份!做好最小程度權(quán)限管理!


          1.數(shù)據(jù)庫(kù)備份很重要


          先來(lái)看看一個(gè)標(biāo)準(zhǔn)的數(shù)據(jù)庫(kù)架構(gòu)圖:


          ce57c50a8f64c820199371f5dcc7b5e0.webp

          ?

          從上圖中大家可以分析一下關(guān)鍵點(diǎn):


          主庫(kù):對(duì)應(yīng)線上實(shí)時(shí)的業(yè)務(wù),如果出現(xiàn)故障,整個(gè)系統(tǒng)和網(wǎng)站的訪問(wèn)將受到影響。從庫(kù):一般用于查詢和主從切換。


          備份數(shù)據(jù):備份方式常用全量備份和增量備份的方式。備份的策略包括跨機(jī)器、跨機(jī)房、跨區(qū)備份。數(shù)據(jù)是企業(yè)第一生產(chǎn)力,數(shù)據(jù)備份尤其重要。


          數(shù)據(jù)備份問(wèn)題也有2個(gè)層次。最低層次的,有些公司壓根就沒(méi)有做備份,那出問(wèn)題一定很麻煩,只能從磁盤做恢復(fù),這個(gè)過(guò)程非常漫長(zhǎng)!


          不做數(shù)據(jù)備份的公司,長(zhǎng)點(diǎn)心吧!特別是CTO或者技術(shù)負(fù)責(zé)人,淘汰的就是您這種吶!


          8c4e8e096e519fff4a05e2aa0fbdc2bd.webp


          高點(diǎn)層次的,有備份但只有全量備份沒(méi)有增量備份。全量備份當(dāng)然不能天天做,每個(gè)公司有自己的策略,可能是一個(gè)月一次也可能是一周一次。如果是這種情況,那這中間的一個(gè)月或者一周的增量數(shù)據(jù)還得從磁盤做恢復(fù),一樣很慢!


          微盟雖然不是大廠,也算有一定規(guī)模了,備份肯定是做了。根據(jù)公告的信息,恢復(fù)需要這么久,我推斷要么是全量是很久前做的,增量數(shù)據(jù)丟失了,要么是刪除者做了極端操作都給干掉了!


          2.做好最小程度權(quán)限管理


          BAT級(jí)別的權(quán)限管理,咱就不談了,其實(shí)咱也不懂。懂了也沒(méi)資源做。我談?wù)勚行S怎么做好最小程度權(quán)限管理。?

          ?

          數(shù)據(jù)庫(kù)操作權(quán)限和備份權(quán)限分離

          DBA負(fù)責(zé)日常主從庫(kù)的管理和維護(hù)。運(yùn)維負(fù)責(zé)備份數(shù)據(jù)的保存。采用全量和增量備份的方式。


          如果DBA抽風(fēng)刪除主庫(kù),主從同步,則重庫(kù)數(shù)據(jù)被刪除。業(yè)務(wù)系統(tǒng)受到影響,運(yùn)維能馬上收到業(yè)務(wù)報(bào)警,運(yùn)維同事接管數(shù)據(jù)庫(kù),進(jìn)行備份恢復(fù)。

          ?

          權(quán)限申請(qǐng)、權(quán)限審批和操作執(zhí)行分離

          控制DBA人員的操作權(quán)限,開發(fā)人員做數(shù)據(jù)庫(kù)表的刪除或修改操作的申請(qǐng)。技術(shù)主管或負(fù)責(zé)人審批,生成審批密碼。DBA根據(jù)密碼登錄特定服務(wù)器,進(jìn)行相關(guān)的操作。


          增加隔離層

          關(guān)掉DBA操作數(shù)據(jù)庫(kù)終端權(quán)限,通過(guò)Yearning等審計(jì)平臺(tái)執(zhí)行數(shù)據(jù)庫(kù)命令,高風(fēng)險(xiǎn)命令直接拒絕執(zhí)行,并發(fā)出報(bào)警。技術(shù)總監(jiān)或CTO確認(rèn)沒(méi)問(wèn)題之后,才能執(zhí)行。


          以上三點(diǎn),用最小資源去做,完全可行。如果還做不到,那就采用云解決方案,基本上用好云的方案,問(wèn)題不大。


          技術(shù)管理這件事,不能完全依賴人??垂嬖趺凑f(shuō)的:「因個(gè)人工作、生活等原因」。具體什么原因咱也不知道,反正人是不可控的!


          技術(shù)管理要有抓手!合理結(jié)合公司資源做一些限制是很有必要的!


          03關(guān)于云方案
          先說(shuō)下一點(diǎn)個(gè)人經(jīng)歷:

          雖然沒(méi)經(jīng)歷過(guò)刪庫(kù)跑路的情況,但是身邊的程序員update語(yǔ)句不加where條件的情況發(fā)生過(guò)2次。


          第一次,所在的公司是自建機(jī)房,由DBA團(tuán)隊(duì)管理數(shù)據(jù)庫(kù)集群。某程序員把所有賬戶的積分字段改了,當(dāng)時(shí)直接嚇尿了。


          當(dāng)即停止賬戶操作的所有業(yè)務(wù),DBA全量回復(fù)0點(diǎn)的數(shù)據(jù),再找到Binlog的update語(yǔ)句的執(zhí)行點(diǎn),重放Binlog。檢查數(shù)據(jù)恢復(fù)正常,重啟開始賬戶相關(guān)的業(yè)務(wù)。耗時(shí)五個(gè)小時(shí)。?


          這五小時(shí)在老板的狂風(fēng)暴雨中,你知道我是怎么度過(guò)的嗎?太艱難了!


          7e4c1e2caf3d610cd008aa99379ede6a.webp


          第二次,所在的公司使用云服務(wù),數(shù)據(jù)庫(kù)使用RDS。某程序員把跟進(jìn)記錄表的用戶留言字段全部更改了,導(dǎo)致主從延時(shí)報(bào)警,銷售人員沒(méi)辦法看用戶留言的真實(shí)數(shù)據(jù)。


          事情發(fā)生后,停止該表的業(yè)務(wù),DBA通過(guò)云服務(wù)的工具直接恢復(fù)到發(fā)生問(wèn)題前1秒的數(shù)據(jù),從發(fā)現(xiàn)問(wèn)題到解決問(wèn)題也就是5分鐘。

          ?

          以上兩個(gè)案例與刪庫(kù)跑路類似,都是數(shù)據(jù)丟失或數(shù)據(jù)污染之后的解決辦法。但是處理起來(lái),耗時(shí)不同。關(guān)鍵點(diǎn)在備份上!


          給個(gè)建議!自建機(jī)房的方式需要有完備的dba和運(yùn)維團(tuán)隊(duì),對(duì)技術(shù)要求高,中小廠商沒(méi)能力自建機(jī)房的,云方案還是要用起來(lái)。另外要關(guān)注云提供廠商提供的全套解決方案,千萬(wàn)別只把云方案當(dāng)服務(wù)器使用。


          微盟這次事故,我估計(jì)就沒(méi)有采用云數(shù)據(jù)庫(kù),而是把云方案當(dāng)服務(wù)器在用。云方案真正的價(jià)值在于容災(zāi)、快速擴(kuò)容、緊急救火。這些能力中小公司要建立起來(lái),不是說(shuō)不可能而是難度極大。業(yè)務(wù)高速跑起來(lái),壓根沒(méi)時(shí)間沒(méi)資源去弄!


          如果微盟用的是云數(shù)據(jù)庫(kù),云數(shù)據(jù)庫(kù)一般都會(huì)保留binlog日志,先全量恢復(fù)再重放增量。這個(gè)恢復(fù)速度非??欤粫?huì)需要36小時(shí)還沒(méi)弄完,產(chǎn)生這么大損失!


          當(dāng)然微盟也是受害者,說(shuō)實(shí)話中國(guó)互聯(lián)網(wǎng)發(fā)展太快,往往即便很努力也沒(méi)法在很多方面考慮周全。好的是,有了云方案讓一些中小公司的確會(huì)更高速的發(fā)展??纯垂妫涸茝S商也在積極的幫助微盟做數(shù)據(jù)恢復(fù)!


          寫在最后的話:技術(shù)人一定是保護(hù)用戶數(shù)據(jù)的最后防線。最近幾年,由于技術(shù)人員無(wú)意或者有意造成的事故不計(jì)其數(shù)。如果代碼對(duì)世界的影響不大,那么這也許就不成問(wèn)題。
          打個(gè)比方,如果你寫了一個(gè)危害幾個(gè)人的代碼,影響是極為有限的。但是如果你在擁有幾億用戶的平臺(tái)上做同樣的事情,結(jié)果一定是慘烈的!
          技術(shù)人一定要遵守職業(yè)道德底線,同時(shí)關(guān)注IT安全,尤其是技術(shù)管理者。希望我們一起讓技術(shù)世界更安全更精彩!好文章,我在看??
          瀏覽 64
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  国产又爽 又黄 在线看 | 在线免费观看黄色的视频网站 | 97超碰人人模人人爱 | 日本不卡a | 熟女乱伦图片 |