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

看板 Soft_Job
作者 jeff87218 (JSMJ)
時間 2023-05-03 00:45:43
留言 227則留言 (48推 8噓 171→)

先簡單自我介紹一下 小弟自學+上課 學了一段時間的Java(大約三年) 偶爾也會上github對 開源專案發一些PR 也會看一些資安 資訊方面的相關議題 因為住在蠻偏遠的地區 所以直到 最近才有找軟體方面的工作 目前剛錄取一份接案公司的工作 主要語言是php 今天整天幾乎都在看code 但是跟github上開源的code比起來真的是又髒又亂 變數命名沒照規則 而且還用老舊的php5 例如2023年的案子裡面還有deprecated的meth od 更別說程式碼感覺都是貼來貼去的 拿以前的來貼改 檔案名稱 資料夾名稱也是都奇奇怪怪 整個專案裡面一大堆無關的code 看code看到後面越來越不對勁 一個簡單的or 1=1就看出來根本沒防sql注入 下班後用某工具對公司的一個案子試了一下 直接把所有db跟table還有資料直接撈出來 重點是全部案子 包括公司的一些資訊都在同一個server上可以直接撈 請問我該回報嗎 回報了不知道會不會被黑…(雖然我手上還有另一份offer 第一次在本版po文請見諒 --
※ 批踢踢實業坊(ptt.cc), 來自: 114.27.18.174 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1683045945.A.DF8.html

t64141: 如果另一個 offer 能接受不如就直接閃人吧 05/03 00:51

lee457088: 回報為啥會被黑,語氣正常的話應該大家都很願意學習吧 05/03 00:53

hippo130: 這些改善的工作就交給你了 05/03 01:07

s06yji3: 趕快跑啊,還回報? 05/03 01:09

Mutibil: 好典型新手的想法 開源 追求code完美簡潔blablabla 05/03 01:09

neo5277: 快逃 05/03 01:09

Mutibil: 都是接案公司了 當deadline逼近 誰還管樣樣都完美啊 05/03 01:10

chchang0820: 老闆請你來幹嘛的?有問題不回報,上PTT發問,笑死 05/03 01:11

Mutibil: 能趕快交付 拿到錢比較重要 你該了解當初這樣做的事由 05/03 01:11

chchang0820: 先跟你上頭討論吧!怎麼會是先發文跟鄉民討論 笑死 05/03 01:15

brucetu: 趕快換一家有點水準的公司 05/03 01:43

superpandal: 最好用pdo傳參 php官方文檔很好 寫php最愜意的就是 05/03 02:37

superpandal: 邊看文檔寫一寫發現這樣就寫好了 05/03 02:38

superpandal: 文檔也有包 當然亂寫的肯定不會這樣做 05/03 02:42

superpandal: 簡潔與安全和擴充性不是衝突的 我寫的是這樣 XD 05/03 02:45

superpandal: 所以都不想用框架 什麼高並發原生其實也都可以 05/03 02:49

superpandal: 解決 php本身就是對c語言的封裝 會寫了對了解c有幫助 05/03 02:50

superpandal: 其它的語言都是研究個老半天 然後例如在jdk裡有些細 05/03 03:02

superpandal: 節 而且更新php版本你應該考慮 如果你是oop狂人 05/03 03:04

Nonsense8: 這種等級的技術債還是快逃吧,有礙成長,除非錢多真香 05/03 03:05

Nonsense8: … 05/03 03:05

Nonsense8: 追求乾淨的程式跟新手老手沒關係,支持原po保持初衷, 05/03 03:10

Nonsense8: 但也要考量各種外力影響,避免成為武痴 05/03 03:10

Nonsense8: 至於要不要回報…很大程度取決於你們公司風氣,建議你 05/03 03:15

Nonsense8: 多觀察和試探前輩跟同事的反應 05/03 03:15

superpandal: 言歸正傳 回報要重構 05/03 03:18

Nonsense8: 有可能大家都心裡有數但就是嫌麻煩而已。嗯不是每個人 05/03 03:19

Nonsense8: 都覺得進步是好事… 05/03 03:19

superpandal: 用vi/vim重構 不行就閃 05/03 03:21

superpandal: 現在php xdebug斷點追縱也很方便 05/03 03:24

pirate12: 快跑 這問題根本不該發生 05/03 04:20

CoNsTaR: 某 Mutibil 這完全不是追求完美的問題吧 05/03 04:41

CoNsTaR: 事情亂做也可以被你美化成"當初這樣做的事由"到底有沒有 05/03 04:41

CoNsTaR: 底線啊 05/03 04:41

CoNsTaR: 你這樣亂搞用的理由是"能趕快交付",我就問到底是亂搞還 05/03 04:41

CoNsTaR: 是把事情做對能比較快交出能用的東西? 05/03 04:41

CoNsTaR: 當然如果你的程度就是只能亂搞,沒日沒夜的亂搞花一堆不 05/03 04:41

CoNsTaR: 必要的時間繞不必要的圈圈解不必要的 bug 最後總算生出一 05/03 04:41

CoNsTaR: 個勉強能用的東西你大概會很自豪自己在 deadline 前生出 05/03 04:41

CoNsTaR: 東西吧 05/03 04:41

CoNsTaR: 然後再信心爆棚來嘴其他人是追求完美? 05/03 04:41

killerufo: 原po新手不要聽5樓在哪邊亂講 05/03 06:59

killerufo: 該做的事情沒做好,deadline只是能力不足的藉口罷了 05/03 06:59

DrTech: 如果是我,會多想:怎麼修,誰修,如果自己修有什麼後果? 05/03 07:17

DrTech: 對自己與公司有幫助嗎?職場報漏洞抓別人毛病真的很簡單, 05/03 07:17

DrTech: 有沒有價值比較重要。 05/03 07:17

loadingN: web仔日常 bug就是留給發現的你來修 05/03 07:18

jobintan: 臺灣接案公司別肖想code品質有多好,要追求品質就不該繼 05/03 07:54

jobintan: 續待了,趕緊跳去別家正常些的公司吧。 05/03 07:54

mathrew: 回報前,先確認自己有沒有解法,又不會造成影響 05/03 07:54

tgyhuj01: 沒有deadline問題的是過太爽還是運氣太好沒遇過 不要用 05/03 07:54

tgyhuj01: 做自家產品的思維去看接案好嗎 05/03 07:54

mathrew: 有的話,就回報然後一併提供上去 05/03 07:54

diousk: 推DrTech, 先思考做這件事如何讓它有價值 05/03 08:13

layer0930: 快逃 05/03 08:43

layer0930: 寫php對 c沒幫助,你又不是自己寫擴展,沒意義。 05/03 08:44

knives: 快逃 05/03 08:52

sniper2824: deadline跟你為了快速亂寫有什麼交集嗎? 有點水準的 05/03 08:53

sniper2824: 話根本不會那樣寫啊 05/03 08:53

sniper2824: 就算為了快 也不會那樣寫 難道你都hardcode嗎 為了趕 05/03 08:54

sniper2824: 快交出去 05/03 08:54

foreverk: 當deadline突然浮動到剩下1%時間,的確會有交集,我覺 05/03 09:03

foreverk: 得接案或產品都可能出現這種情況啦,線上都爆炸了,先h 05/03 09:03

foreverk: ardcode止血再說,問題在於事後有沒有去檢討調整,有時 05/03 09:03

foreverk: 候調整期也不是一兩天的規劃,如果要幾周甚至一個月, 05/03 09:03

foreverk: 過程中來了個新人看到就會認為這什麼糞code,有時候糞c 05/03 09:03

foreverk: ode是有他的前因後果 05/03 09:03

teddy: 既然發現漏洞那就交給你處理了:) 你說原本的專案進度 當然 05/03 09:06

teddy: 照舊阿 能者多勞 公司不會虧待你 年底我試著幫你跟上面談談 05/03 09:06

leolarrel: Mutibil的想法我這種寫code新手完全無法接受 05/03 09:14

umum29: 這種基本的漏洞會存在這麼久 勸你快逃ㄚㄚ 05/03 09:17

tgyhuj01: 這種漏洞有在接案做過的應該都見怪不怪了 05/03 09:22

tgyhuj01: 沒有才值得驚訝 05/03 09:23

tgyhuj01: 理想不存在現實裡 不然就像上面說的能者多勞 多做點 05/03 09:24

ssccg: hardcode和injection是兩回事吧,injection完全是習慣不好 05/03 09:49

ssccg: hardcode頂多是要改時麻煩點,一種技術債。SQL injection是 05/03 09:54

ssccg: 不滿足最基本的資安規格,而且常見的直接組字串不用參數化 05/03 09:58

ssccg: 的寫法寫起來就沒有比較快啊 05/03 09:59

ssccg: 這種通常都是從來沒學過正確寫法的半路出家碼農寫的,不要 05/03 10:00

ssccg: 用什麼時程壓力去幫基本功不及格的人開脫 05/03 10:00

nelley: 可以把所有db都dump出來這說不定早被其他人dump過了。現 05/03 10:06

nelley: 在你回報了公司才發現出歹事了說不定還變成頭號嫌疑犯。 05/03 10:06

nelley: 我想這才是原po最擔心的事。。。 05/03 10:06

foreverk: 我針對hardcode,說實在補習班也會教injection,還這樣 05/03 10:17

foreverk: 寫單純就,程度差 05/03 10:17

acgotaku: 現在還有 sql injection 這種古老到不行的漏洞?! 05/03 10:20

InfinitySA: 同意樓上 我以為只在教科書範例上看過ww 05/03 10:23

ku399999: 回報啊 要改?沒問題 請給時間 不改?那就不是我的問題 05/03 10:23

knives: 只能說這些都是技術債,現在新的框架用ORM早就沒那問題了 05/03 10:37

tgyhuj01: 別懷疑 多到不行 常接案的人就懂 05/03 10:59

expury: 自學可以到開源專案發 PR 、還能隨便抓出公司專案漏洞 05/03 11:05

expury: 感覺原 po 是有天份的 05/03 11:05

expury: 快換家像樣點的公司吧 05/03 11:06

typeking: 一個人是救不了一間公司的,大家都爛你是想要改善什麼? 05/03 11:45

iamshiao: 一定要回報 05/03 11:52

TAKADO: 還是要回報,然後看看公司的處理方法,就可以決定是不是該 05/03 11:54

TAKADO: 逃了。 05/03 11:54

gs8613789: 不要聽五樓在亂講,正常公司根本不會犯這麼基礎的錯誤 05/03 12:00

kurtsgm: 接案公司沒人在管維護性的 你是要clean code還是要money 05/03 12:03

knives: 接案就沒救了,反正你也待不久的,別回報了 05/03 12:05

jeff87218: 感謝大家的回覆 目前有想到一些補洞的方式 看到db裡面 05/03 12:15

jeff87218: 存密碼是明文的方式沒加密 真的大開眼界了…主管今天 05/03 12:15

jeff87218: 不在之後再想辦法回報 05/03 12:15

rahit: 要馬不報 要馬離職的時候報 05/03 12:21

rahit: 現在報就是你負責修 05/03 12:21

rahit: 接案那種責任外包的制度只關心錢有沒有進來 05/03 12:21

rahit: 待久了只會限制自己的發展 05/03 12:21

ptta: 『這麼行喔?那都給你做好啦』 05/03 12:44

airtsubasa: 高雄公司? 嘻嘻 專案外部可連嗎? 不可的話你在擔心 05/03 12:48

airtsubasa: 什麼 05/03 12:48

airtsubasa: 你是專案維護者嗎 職場倫理政治大於程式合理性 05/03 12:49

gaowei16: 原PO 你想一下 上面留言的 就是你公司的前輩類型居多 05/03 12:55

WaterLengend: 臭老人真多XD 05/03 13:32

knives: 現實是菜逼巴以為是自己先發現,其他老人都沒發現,然後回 05/03 13:33

knives: 報給主管被主管打槍,然後不爽離職結局 05/03 13:34

acgotaku: 如果密碼都敢明碼存 那真的可以理解sql注入會發生 05/03 13:39

acgotaku: 其實呀 這些爛code應該不少是老闆創業的時候自己幹出來 05/03 13:42

acgotaku: 既然都是接案公司,你花時間去維護已經收完尾款的專案 05/03 13:43

acgotaku: 真的是有點浪費時間,甚至甲方都不存在了或沒在用了 05/03 13:44

acgotaku: 接案公司用人力評估新案 才有辦法賺一點微薄利潤 05/03 13:46

acgotaku: 不是自己的事業都隨便做 這就是接案公司的態度 你太認真 05/03 13:48

acgotaku: 老闆會覺得 你有時間不去做新案 在搞款項都收完的要幹嘛 05/03 13:48

Mutibil: 笑死 在那邊嘴亂講 依據? 為何要用一般公司的角度去看 05/03 13:50

Mutibil: 接案公司 更何況是更小規模的接案公司 我沒說sql injecti 05/03 13:50

Mutibil: on這種錯誤是正常去合理化 但人流動率那麼高 有時還要外 05/03 13:50

Mutibil: 包找救火 code review是能做到多確實?要求品質? deadli 05/03 13:50

Mutibil: ne壓力下 團隊管理人救火都來不及了 能花多少時間團隊管 05/03 13:50

Mutibil: 理 專案迭代那麼快與緊促 什麼都可能發生啊 但都會有它發 05/03 13:50

Mutibil: 生的緣由 不要用當下的認知去看待所有邏輯 覺得都好糞 只 05/03 13:50

Mutibil: 能盡可能做到別讓紕漏常態化 站在不同角度去看待接案性 05/03 13:50

Mutibil: 質 本就是件很荒謬的事情 05/03 13:50

purplvampire: 你覺得只有自己知道嗎? 05/03 14:24

airtsubasa: 如果你要讓公司面對,你不妨用外面電腦去搞一下 05/03 14:46

leolarrel: 別再為能力不足找藉口了.干接案屁事 05/03 14:50

t64141: 接案有其限制沒錯,但不是這麼無限上綱的,原po提的疑慮 05/03 14:54

t64141: 也很合理,結果有人在那邊嘴新手想法的,被反駁一下也是 05/03 14:54

t64141: 剛好而已 05/03 14:54

tgyhuj01: 要說跟接案沒關係也對啦 跟付錢的人關係比較大 05/03 15:00

tgyhuj01: 一堆案子都是舊框架也是有一堆資安問題 你改嗎 05/03 15:06

jerry030897: XDDDDDDDDD 05/03 15:09

angusyu: 這種問題也能問,聘你做什麼… 05/03 15:15

EDMillex: 你發現了 你來改 加油! 05/03 15:23

onnie: 世界很現實 如果是正在run的專案要改 05/03 15:40

onnie: 收完尾款的code沒有改的必要 05/03 15:40

kurtsgm: 不要聽上面講的什麼用外面的電腦去搞一下之類的話 05/03 15:46

kurtsgm: 就算公司資安做很爛 你去攻擊他還是會吃刑責跟官司 05/03 15:46

kurtsgm: 不要沒事找事做 上面推文的人不會幫你付和解金 05/03 15:46

luke72: 可以改啊,然後各種你想不到的地方炸裂看你怎麼收 05/03 15:47

luke72: 這種爛code通常會有各種神奇的用法,祖傳秘笈 05/03 15:48

luke72: SQL injection你有沒想過可能某個不知道的專案靠它運作 05/03 15:50

luke72: 所以為什麼越資深的人做這種事情做越慢,因為謹慎 05/03 15:53

luke72: 好的架構是很重要,但對小公司來講,獲利更重要 05/03 15:54

luke72: 資安漏洞,客戶驗收有驗過嗎?有簽賠償條款嗎 05/03 15:56

kyoe: 接案公司講了應該也沒用,因為沒法跟客戶收錢 05/03 16:43

layer0930: 前幾篇還有人推接案公司,真的是害人。除非能力很強或 05/03 17:02

layer0930: 是真的沒門路才去試試看 05/03 17:02

layer0930: 雖然已現在的狀況來看大公司也有機會,但是機率相對小 05/03 17:04

layer0930: 至少有資安團隊會幹你 05/03 17:04

layer0930: 沒說接案公司不好,但是不推薦想走正路的新手 05/03 17:12

layer0930: 會非常痛,然後極小的機率才有機會屠龍 05/03 17:12

superpandal: 對寫c有幫助 基本函數名很多相同 一些用法也類似 05/03 17:57

superpandal: 寫java就很不一樣 目前沒有見過框架跟系統一致性強 05/03 18:02

superpandal: 的 都是亂封裝亂寫 凡事都是api解很可笑 05/03 18:05

layer0930: ….語言寫久寫多,會發現好用的function 都一樣。 05/03 18:05

layer0930: 不是跟c 很像而是中高階語言都這樣 05/03 18:05

superpandal: 當然公司的可以不用那麼較真 XD 之前寫的也沒有這樣 05/03 18:06

superpandal: 很多都很不一樣 去比就知道 05/03 18:09

superpandal: php對比它們來說相似度高多了 c其實也沒有那麼難寫 05/03 18:13

superpandal: 純脆是別人的嚇唬 c都可以傳函數當參數 05/03 18:14

layer0930: …寫久就知道了,另外真的幫助不大。因為跨語言的重點 05/03 18:15

layer0930: 不在這邊 05/03 18:15

layer0930: 另外語法糖各語言不同,但是function 都差不多。 05/03 18:15

layer0930: C 不難寫….? 認真?是從那個架構上寫? 05/03 18:17

superpandal: 可以當入門磚這就夠了 php還可以寫更好 05/03 18:35

superpandal: c難的是那些底層的實現 本身沒有想像中的難 也可以 05/03 18:38

superpandal: 很動態 05/03 18:38

layer0930: ……. 05/03 18:50

superpandal: 就是不管什麼語言你亂寫都很難了解與維護 就像本文 05/03 18:55

KhePri: 塊陶 05/03 20:05

yamagishi: 跟上面提看要不要開ticket改善啊 05/03 21:57

viper9709: 推ssccg 05/03 22:48

ikachann: 其實不太意外 曾經駐點看過銀行系統的code 也是慘不忍睹 05/04 00:09

Lhmstu: 上報吧,不過我猜大概早就知道了,只是沒必要修而已畢竟 05/04 02:11

Lhmstu: 沒錢 05/04 02:11

youtuuube000: 不建議改到時爆炸怎麼辦 05/04 03:08

youtuuube000: 薪水不高直接跑了吧 05/04 03:08

encorek22554: 這篇是照妖鏡嗎?上面一堆回覆真是大開眼界,接案 05/04 08:35

encorek22554: 公司的素質都是這樣嗎? 05/04 08:35

tgyhuj01: 有這種疑問是不是對市場不夠了解 還是活在理想中 05/04 08:50

tgyhuj01: 光是一個http改https就可能讓系統掛掉 誰要承擔責任 05/04 08:52

stosto: 恩 ....職場菜鳥 05/04 10:37

airtsubasa: 接案公司? 看過寫內部服務的程式嗎 05/04 11:02

TAKADO: 甲方自己內部的技術債才精彩,乙方驗收一堆報告要交,原碼 05/04 12:02

TAKADO: 掃描弱點掃描是基本的,現在連用的第三方套件1個月沒更新 05/04 12:02

TAKADO: 或是版本不是最新版都要寫原因。 05/04 12:02

orze04: 你該不會以為只有你有發現嗎? 05/04 12:05

fanatics5566: 覺得公司其他人都知道,只是沒人要去理而已。如果 05/04 12:49

fanatics5566: 原PO很在意程式碼品質的話建議換家公司。 05/04 12:49

vi000246: 幹嘛回報 回報了還要修 快逃啊 05/04 13:41

vi000246: 身為軟體人還是要有基本的職業道德 deadline不是藉口 05/04 13:42

bxc: who car 直接快逃才是重點 05/04 14:39

airtsubasa: 發文者看來都沒有任何回應 不知道是在拯救世界的路上 05/04 20:25

airtsubasa: ,還是已經被這個世界背叛… 05/04 20:25

jeff87218: 回樓上 最近家人有東西需要幫忙 所以比較少看…也很感 05/05 01:26

jeff87218: 謝大家回覆 因為是跨領域轉職第一次看到這個問題覺得 05/05 01:26

jeff87218: 很神奇 所以就上來問問了 05/05 01:26

jeff87218: 目前也有跟主管反應 但好像沒有要修或者要動的意思 看 05/05 01:32

jeff87218: 來只能先這樣了… 05/05 01:32

airtsubasa: 回樓上,你是對的,但現實還是要看清,如果案子是轉到 05/05 03:30

airtsubasa: 自身維護建議慢慢修正,如果你只是瞄到別人案子,還是 05/05 03:30

airtsubasa: 當個安靜的人 05/05 03:30

twgamerave: 我的RD主管寫的程式也會有這種問題..講白了沒有code 05/05 04:24

twgamerave: review,產品賣不了多少的公司,根本沒人在乎這個問 05/05 04:24

twgamerave: 題,他們只在乎你在時間內有更多的產出還有配合客戶 05/05 04:24

twgamerave: 一改再改 05/05 04:24

dream1124: 可以回報啊 剛好試試他們是怎麼對待新人和這類問題 05/05 13:27

dream1124: 如果你沒講,那事情也許永遠沒機會改善 05/05 13:27

dream1124: 另外,其他亂七八糟、髒亂等問題是真實世界常有的 05/05 13:28

dream1124: 看亂的程度和能處理的資源多寡,有時只好先放著不管 05/05 13:29

viper9709: 推原po的回應 05/05 17:30

akito117: 正常也不會要你改,沒收入又要大改,又有可能有新的錯 05/05 22:41

akito117: 誤,只能後來的案子多注意一點吧 05/05 22:41

new122851: 寧願多加班不拿錢也要寫clean code. deadline可以延期 05/06 01:55

new122851: 頂多賠錢 05/06 01:55

newnovice: 惦惦or換公司 05/06 11:01

Darkword1987: 我的話會先私下問前輩 不會直接往上捅 那當然如果 05/06 12:47

Darkword1987: 得到的結論是擺爛的話我會考慮開始找下一份 05/06 12:47

您可能感興趣