新手剛入職就發現有SQL injection漏洞 該回報嗎

作者: jeff87218 (JSMJ)   2023-05-03 00:45:43
先簡單自我介紹一下 小弟自學+上課 學了一段時間的Java(大約三年) 偶爾也會上github對
開源專案發一些PR 也會看一些資安 資訊方面的相關議題 因為住在蠻偏遠的地區 所以直到
最近才有找軟體方面的工作

目前剛錄取一份接案公司的工作 主要語言是php

今天整天幾乎都在看code
但是跟github上開源的code比起來真的是又髒又亂

變數命名沒照規則 而且還用老舊的php5 例如2023年的案子裡面還有deprecated的meth
od

更別說程式碼感覺都是貼來貼去的 拿以前的來貼改
檔案名稱 資料夾名稱也是都奇奇怪怪 整個專案裡面一大堆無關的code

看code看到後面越來越不對勁 一個簡單的or 1=1就看出來根本沒防sql注入

下班後用某工具對公司的一個案子試了一下 直接把所有db跟table還有資料直接撈出來
重點是全部案子 包括公司的一些資訊都在同一個server上可以直接撈

請問我該回報嗎 回報了不知道會不會被黑…(雖然我手上還有另一份offer

第一次在本版po文請見諒
作者: t64141 (榕樹)   2023-05-03 00:51:00
如果另一個 offer 能接受不如就直接閃人吧
作者: lee457088   2023-05-03 00:53:00
回報為啥會被黑,語氣正常的話應該大家都很願意學習吧
作者: hippo130 (藍色河馬)   2023-05-03 01:07:00
這些改善的工作就交給你了
作者: s06yji3 (阿南)   2023-05-03 01:09:00
趕快跑啊,還回報?
作者: Mutibil (nujabes)   2023-05-03 01:09:00
好典型新手的想法 開源 追求code完美簡潔blablabla
作者: neo5277 (I am an agent of chaos)   2023-05-03 01:09:00
快逃
作者: Mutibil (nujabes)   2023-05-03 01:10:00
都是接案公司了 當deadline逼近 誰還管樣樣都完美啊
作者: chchang0820 (野豬弟15號)   2023-05-03 01:11:00
老闆請你來幹嘛的?有問題不回報,上PTT發問,笑死
作者: Mutibil (nujabes)   2023-05-03 01:11:00
能趕快交付 拿到錢比較重要 你該了解當初這樣做的事由
作者: chchang0820 (野豬弟15號)   2023-05-03 01:15:00
先跟你上頭討論吧!怎麼會是先發文跟鄉民討論 笑死
作者: brucetu (sec)   2023-05-03 01:43:00
趕快換一家有點水準的公司
作者: superpandal   2023-05-03 02:37:00
最好用pdo傳參 php官方文檔很好 寫php最愜意的就是邊看文檔寫一寫發現這樣就寫好了文檔也有包 當然亂寫的肯定不會這樣做簡潔與安全和擴充性不是衝突的 我寫的是這樣 XD所以都不想用框架 什麼高並發原生其實也都可以解決 php本身就是對c語言的封裝 會寫了對了解c有幫助其它的語言都是研究個老半天 然後例如在jdk裡有些細節 而且更新php版本你應該考慮 如果你是oop狂人
作者: Nonsense8 (胡說)   2023-05-03 03:05:00
這種等級的技術債還是快逃吧,有礙成長,除非錢多真香…追求乾淨的程式跟新手老手沒關係,支持原po保持初衷,但也要考量各種外力影響,避免成為武痴至於要不要回報…很大程度取決於你們公司風氣,建議你多觀察和試探前輩跟同事的反應
作者: superpandal   2023-05-03 03:18:00
言歸正傳 回報要重構
作者: Nonsense8 (胡說)   2023-05-03 03:19:00
有可能大家都心裡有數但就是嫌麻煩而已。嗯不是每個人都覺得進步是好事…
作者: superpandal   2023-05-03 03:21:00
用vi/vim重構 不行就閃現在php xdebug斷點追縱也很方便
作者: pirate12 (pirate12)   2023-05-03 04:20:00
快跑 這問題根本不該發生
作者: CoNsTaR ((const *))   2023-05-03 04:41:00
某 Mutibil 這完全不是追求完美的問題吧事情亂做也可以被你美化成"當初這樣做的事由"到底有沒有底線啊你這樣亂搞用的理由是"能趕快交付",我就問到底是亂搞還是把事情做對能比較快交出能用的東西?當然如果你的程度就是只能亂搞,沒日沒夜的亂搞花一堆不必要的時間繞不必要的圈圈解不必要的 bug 最後總算生出一個勉強能用的東西你大概會很自豪自己在 deadline 前生出東西吧然後再信心爆棚來嘴其他人是追求完美?
作者: killerufo (淺水深藍)   2023-05-03 06:59:00
原po新手不要聽5樓在哪邊亂講該做的事情沒做好,deadline只是能力不足的藉口罷了
作者: DrTech (竹科管理處網軍研發人員)   2023-05-03 07:17:00
如果是我,會多想:怎麼修,誰修,如果自己修有什麼後果?對自己與公司有幫助嗎?職場報漏洞抓別人毛病真的很簡單,有沒有價值比較重要。
作者: loadingN (sarsaparilla)   2023-05-03 07:18:00
web仔日常 bug就是留給發現的你來修
作者: jobintan (Robin Artemstein)   2023-05-03 07:54:00
臺灣接案公司別肖想code品質有多好,要追求品質就不該繼續待了,趕緊跳去別家正常些的公司吧。
作者: mathrew (Joey)   2023-05-03 07:54:00
回報前,先確認自己有沒有解法,又不會造成影響
作者: tgyhuj01 (cloud)   2023-05-03 07:54:00
沒有deadline問題的是過太爽還是運氣太好沒遇過 不要用做自家產品的思維去看接案好嗎
作者: diousk (夢的碎片)   2023-05-03 08:13:00
推DrTech, 先思考做這件事如何讓它有價值
作者: layer0930 (皇室御漬梨子醬)   2023-05-03 08:43:00
快逃寫php對 c沒幫助,你又不是自己寫擴展,沒意義。
作者: knives   2023-05-03 08:52:00
快逃
作者: sniper2824 (月夜)   2023-05-03 08:53:00
deadline跟你為了快速亂寫有什麼交集嗎? 有點水準的話根本不會那樣寫啊就算為了快 也不會那樣寫 難道你都hardcode嗎 為了趕快交出去
作者: foreverk (文藝青年)   2023-05-03 09:03:00
當deadline突然浮動到剩下1%時間,的確會有交集,我覺得接案或產品都可能出現這種情況啦,線上都爆炸了,先hardcode止血再說,問題在於事後有沒有去檢討調整,有時候調整期也不是一兩天的規劃,如果要幾周甚至一個月,過程中來了個新人看到就會認為這什麼糞code,有時候糞code是有他的前因後果
作者: teddy (這是個好問題)   2023-05-03 09:06:00
既然發現漏洞那就交給你處理了:) 你說原本的專案進度 當然照舊阿 能者多勞 公司不會虧待你 年底我試著幫你跟上面談談
作者: leolarrel (真.粽子無雙)   2023-05-03 09:14:00
Mutibil的想法我這種寫code新手完全無法接受
作者: umum29 (....)   2023-05-03 09:17:00
這種基本的漏洞會存在這麼久 勸你快逃ㄚㄚ
作者: tgyhuj01 (cloud)   2023-05-03 09:22:00
這種漏洞有在接案做過的應該都見怪不怪了沒有才值得驚訝理想不存在現實裡 不然就像上面說的能者多勞 多做點
作者: ssccg (23)   2023-05-03 09:49:00
hardcode和injection是兩回事吧,injection完全是習慣不好hardcode頂多是要改時麻煩點,一種技術債。SQL injection是不滿足最基本的資安規格,而且常見的直接組字串不用參數化的寫法寫起來就沒有比較快啊這種通常都是從來沒學過正確寫法的半路出家碼農寫的,不要用什麼時程壓力去幫基本功不及格的人開脫
作者: nelley (名字:大便王)   2023-05-03 10:06:00
可以把所有db都dump出來這說不定早被其他人dump過了。現在你回報了公司才發現出歹事了說不定還變成頭號嫌疑犯。我想這才是原po最擔心的事。。。
作者: foreverk (文藝青年)   2023-05-03 10:17:00
我針對hardcode,說實在補習班也會教injection,還這樣寫單純就,程度差
作者: acgotaku (otaku)   2023-05-03 10:20:00
現在還有 sql injection 這種古老到不行的漏洞?!
作者: InfinitySA (~我肥宅我有妹妹~)   2023-05-03 10:23:00
同意樓上 我以為只在教科書範例上看過ww
作者: ku399999   2023-05-03 10:23:00
回報啊 要改?沒問題 請給時間 不改?那就不是我的問題
作者: knives   2023-05-03 10:37:00
只能說這些都是技術債,現在新的框架用ORM早就沒那問題了
作者: tgyhuj01 (cloud)   2023-05-03 10:59:00
別懷疑 多到不行 常接案的人就懂
作者: expury (ao6x87)   2023-05-03 11:05:00
自學可以到開源專案發 PR 、還能隨便抓出公司專案漏洞感覺原 po 是有天份的快換家像樣點的公司吧
作者: typeking ( )   2023-05-03 11:45:00
一個人是救不了一間公司的,大家都爛你是想要改善什麼?
作者: iamshiao (CircleHsiao)   2023-05-03 11:52:00
一定要回報
作者: TAKADO (朕沒給的你不能搶)   2023-05-03 11:54:00
還是要回報,然後看看公司的處理方法,就可以決定是不是該逃了。
作者: gs8613789 (Shang6029)   2023-05-03 12:00:00
不要聽五樓在亂講,正常公司根本不會犯這麼基礎的錯誤
作者: kurtsgm   2023-05-03 12:03:00
接案公司沒人在管維護性的 你是要clean code還是要money
作者: knives   2023-05-03 12:05:00
接案就沒救了,反正你也待不久的,別回報了
作者: jeff87218 (JSMJ)   2023-05-03 12:15:00
感謝大家的回覆 目前有想到一些補洞的方式 看到db裡面存密碼是明文的方式沒加密 真的大開眼界了…主管今天不在之後再想辦法回報
作者: rahit (水元素)   2023-05-03 12:21:00
要馬不報 要馬離職的時候報現在報就是你負責修接案那種責任外包的制度只關心錢有沒有進來待久了只會限制自己的發展
作者: ptta (ptta)   2023-05-03 12:44:00
『這麼行喔?那都給你做好啦』
作者: airtsubasa (偽學姊)   2023-05-03 12:48:00
高雄公司? 嘻嘻 專案外部可連嗎? 不可的話你在擔心什麼你是專案維護者嗎 職場倫理政治大於程式合理性
作者: gaowei16 (啾啾人)   2023-05-03 12:55:00
原PO 你想一下 上面留言的 就是你公司的前輩類型居多
作者: WaterLengend (Leeeeeeeeooooooo)   2023-05-03 13:32:00
臭老人真多XD
作者: knives   2023-05-03 13:33:00
現實是菜逼巴以為是自己先發現,其他老人都沒發現,然後回報給主管被主管打槍,然後不爽離職結局
作者: acgotaku (otaku)   2023-05-03 13:39:00
如果密碼都敢明碼存 那真的可以理解sql注入會發生其實呀 這些爛code應該不少是老闆創業的時候自己幹出來既然都是接案公司,你花時間去維護已經收完尾款的專案真的是有點浪費時間,甚至甲方都不存在了或沒在用了接案公司用人力評估新案 才有辦法賺一點微薄利潤不是自己的事業都隨便做 這就是接案公司的態度 你太認真老闆會覺得 你有時間不去做新案 在搞款項都收完的要幹嘛
作者: Mutibil (nujabes)   2023-05-03 13:50:00
笑死 在那邊嘴亂講 依據? 為何要用一般公司的角度去看接案公司 更何況是更小規模的接案公司 我沒說sql injection這種錯誤是正常去合理化 但人流動率那麼高 有時還要外包找救火 code review是能做到多確實?要求品質? deadline壓力下 團隊管理人救火都來不及了 能花多少時間團隊管理 專案迭代那麼快與緊促 什麼都可能發生啊 但都會有它發生的緣由 不要用當下的認知去看待所有邏輯 覺得都好糞 只能盡可能做到別讓紕漏常態化 站在不同角度去看待接案性質 本就是件很荒謬的事情
作者: purplvampire (阿修雷)   2023-05-03 14:24:00
你覺得只有自己知道嗎?
作者: airtsubasa (偽學姊)   2023-05-03 14:46:00
如果你要讓公司面對,你不妨用外面電腦去搞一下
作者: leolarrel (真.粽子無雙)   2023-05-03 14:50:00
別再為能力不足找藉口了.干接案屁事
作者: t64141 (榕樹)   2023-05-03 14:54:00
接案有其限制沒錯,但不是這麼無限上綱的,原po提的疑慮也很合理,結果有人在那邊嘴新手想法的,被反駁一下也是剛好而已
作者: tgyhuj01 (cloud)   2023-05-03 15:00:00
要說跟接案沒關係也對啦 跟付錢的人關係比較大一堆案子都是舊框架也是有一堆資安問題 你改嗎
作者: jerry030897 (終究還是失敗)   2023-05-03 15:09:00
XDDDDDDDDD
作者: angusyu (〒△〒)   2023-05-03 15:15:00
這種問題也能問,聘你做什麼…
作者: EDMillex (太惠了吧?)   2023-05-03 15:23:00
你發現了 你來改 加油!
作者: onnie (onnie)   2023-05-03 15:40:00
世界很現實 如果是正在run的專案要改收完尾款的code沒有改的必要
作者: kurtsgm   2023-05-03 15:46:00
不要聽上面講的什麼用外面的電腦去搞一下之類的話就算公司資安做很爛 你去攻擊他還是會吃刑責跟官司不要沒事找事做 上面推文的人不會幫你付和解金
作者: luke72 (ccc)   2023-05-03 15:47:00
可以改啊,然後各種你想不到的地方炸裂看你怎麼收這種爛code通常會有各種神奇的用法,祖傳秘笈SQL injection你有沒想過可能某個不知道的專案靠它運作所以為什麼越資深的人做這種事情做越慢,因為謹慎好的架構是很重要,但對小公司來講,獲利更重要資安漏洞,客戶驗收有驗過嗎?有簽賠償條款嗎
作者: kyoe (緣份‧不再)   2023-05-03 16:43:00
接案公司講了應該也沒用,因為沒法跟客戶收錢
作者: layer0930 (皇室御漬梨子醬)   2023-05-03 17:02:00
前幾篇還有人推接案公司,真的是害人。除非能力很強或是真的沒門路才去試試看雖然已現在的狀況來看大公司也有機會,但是機率相對小至少有資安團隊會幹你沒說接案公司不好,但是不推薦想走正路的新手會非常痛,然後極小的機率才有機會屠龍
作者: superpandal   2023-05-03 17:57:00
對寫c有幫助 基本函數名很多相同 一些用法也類似寫java就很不一樣 目前沒有見過框架跟系統一致性強的 都是亂封裝亂寫 凡事都是api解很可笑
作者: layer0930 (皇室御漬梨子醬)   2023-05-03 18:05:00
….語言寫久寫多,會發現好用的function 都一樣。不是跟c 很像而是中高階語言都這樣
作者: superpandal   2023-05-03 18:06:00
當然公司的可以不用那麼較真 XD 之前寫的也沒有這樣很多都很不一樣 去比就知道
作者: layer0930 (皇室御漬梨子醬)   2023-05-03 18:15:00
…寫久就知道了,另外真的幫助不大。因為跨語言的重點不在這邊另外語法糖各語言不同,但是function 都差不多。C 不難寫….? 認真?是從那個架構上寫?
作者: superpandal   2023-05-03 18:35:00
可以當入門磚這就夠了 php還可以寫更好c難的是那些底層的實現 本身沒有想像中的難 也可以很動態
作者: layer0930 (皇室御漬梨子醬)   2023-05-03 18:50:00
…….
作者: superpandal   2023-05-03 18:55:00
就是不管什麼語言你亂寫都很難了解與維護 就像本文
作者: KhePri (史密提威威)   2023-05-03 20:05:00
塊陶
作者: yamagishi (山岸刑務官)   2023-05-03 21:57:00
跟上面提看要不要開ticket改善啊
作者: viper9709 (阿達)   2023-05-03 22:48:00
推ssccg
作者: ikachann (喵喵)   2023-05-04 00:09:00
其實不太意外 曾經駐點看過銀行系統的code 也是慘不忍睹
作者: Lhmstu (lhmstu)   2023-05-04 02:11:00
上報吧,不過我猜大概早就知道了,只是沒必要修而已畢竟沒錢
作者: youtuuube000 (小孩)   2023-05-04 03:08:00
不建議改到時爆炸怎麼辦薪水不高直接跑了吧
作者: encorek22554 (二寶)   2023-05-04 08:35:00
這篇是照妖鏡嗎?上面一堆回覆真是大開眼界,接案公司的素質都是這樣嗎?
作者: tgyhuj01 (cloud)   2023-05-04 08:50:00
有這種疑問是不是對市場不夠了解 還是活在理想中光是一個http改https就可能讓系統掛掉 誰要承擔責任
作者: stosto (樹多)   2023-05-04 10:37:00
恩 ....職場菜鳥
作者: airtsubasa (偽學姊)   2023-05-04 11:02:00
接案公司? 看過寫內部服務的程式嗎
作者: TAKADO (朕沒給的你不能搶)   2023-05-04 12:02:00
甲方自己內部的技術債才精彩,乙方驗收一堆報告要交,原碼掃描弱點掃描是基本的,現在連用的第三方套件1個月沒更新或是版本不是最新版都要寫原因。
作者: orze04 (orz)   2023-05-04 12:05:00
你該不會以為只有你有發現嗎?
作者: fanatics5566 (★㊣↖狂熱a5566↘㊣☆)   2023-05-04 12:49:00
覺得公司其他人都知道,只是沒人要去理而已。如果原PO很在意程式碼品質的話建議換家公司。
作者: vi000246 (Vi)   2023-05-04 13:41:00
幹嘛回報 回報了還要修 快逃啊身為軟體人還是要有基本的職業道德 deadline不是藉口
作者: bxc (中年魯蛇聯盟)   2023-05-04 14:39:00
who car 直接快逃才是重點
作者: airtsubasa (偽學姊)   2023-05-04 20:25:00
發文者看來都沒有任何回應 不知道是在拯救世界的路上,還是已經被這個世界背叛…
作者: jeff87218 (JSMJ)   2023-05-05 01:26:00
回樓上 最近家人有東西需要幫忙 所以比較少看…也很感謝大家回覆 因為是跨領域轉職第一次看到這個問題覺得很神奇 所以就上來問問了目前也有跟主管反應 但好像沒有要修或者要動的意思 看來只能先這樣了…
作者: airtsubasa (偽學姊)   2023-05-05 03:30:00
回樓上,你是對的,但現實還是要看清,如果案子是轉到自身維護建議慢慢修正,如果你只是瞄到別人案子,還是當個安靜的人
作者: twgamerave (北極星)   2023-05-05 04:24:00
我的RD主管寫的程式也會有這種問題..講白了沒有codereview,產品賣不了多少的公司,根本沒人在乎這個問題,他們只在乎你在時間內有更多的產出還有配合客戶一改再改
作者: dream1124 (全新開始)   2023-05-05 13:27:00
可以回報啊 剛好試試他們是怎麼對待新人和這類問題如果你沒講,那事情也許永遠沒機會改善另外,其他亂七八糟、髒亂等問題是真實世界常有的看亂的程度和能處理的資源多寡,有時只好先放著不管
作者: viper9709 (阿達)   2023-05-05 17:30:00
推原po的回應
作者: akito117 (宗益)   2023-05-05 22:41:00
正常也不會要你改,沒收入又要大改,又有可能有新的錯誤,只能後來的案子多注意一點吧
作者: new122851 (未若柳絮因風起)   2023-05-06 01:55:00
寧願多加班不拿錢也要寫clean code. deadline可以延期頂多賠錢
作者: newnovice (serenity)   2023-05-06 11:01:00
惦惦or換公司
作者: Darkword1987 (黑字)   2023-05-06 12:47:00
我的話會先私下問前輩 不會直接往上捅 那當然如果得到的結論是擺爛的話我會考慮開始找下一份

Links booklink

Contact Us: admin [ a t ] ucptt.com