Injection in API HTTP request from frontend? - 資安

Zora avatar
By Zora
at 2019-07-04T20:21

Table of Contents

新的系列 板上大家還是害羞提出問題

我有空的時候從 stackexchange 上面拿問題討論




來自 security.stackexchange.com [0] 的發問

標題是:Security implications of injection in api http request from frontend?

很像是設計 API 的工程師 初次接觸到資訊安全領域的人會提出來的問題

對於 API 實作方面上 擔心是否會出現 Injection 相關的安全性漏洞

他的提問算是蠻粗略的

像是 article = httpLibrary.get('api.mysite.com/articles/' + articleId); 這樣的函數

是否存在 CRLF 等其他的安全性問題




基本上我會選擇回答 這取決於你還做了哪些事情

單從一行 code 來看它本身當然沒啥問題 有機會出現問題的是 httpLibrary.get 的實作

既然是別人實作上的問題 那可能發生的漏洞就會很多

如果參照 OWASP Top 10 - A1 Injection [1] 的建議

要避免 Injection 的方式可以使用

- 安全的 API 代表要看 httpLibrary.get 是否太久沒更新、或者有安全性漏洞
- 白名單的輸入值檢查 做額外的 articleId 像是只允許數字
- 跳脫特殊字元 跳脫除了 A-Za-z0-9 以外的所有字元



[0]: https://security.stackexchange.com/questions/212908
[1]: https://www.owasp.org/images/7/72/OWASP_Top_10-2017_%28en%29.pdf.pdf

--
Tags: 資安

All Comments

Madame avatar
By Madame
at 2019-07-07T20:20
thanks for sharing.
Callum avatar
By Callum
at 2019-07-10T20:19

資料突然消失?

Lucy avatar
By Lucy
at 2019-06-17T01:42
如題 小弟在某個論壇賣二手玩具 賣得還不錯不到十天就賣掉大半 但大前天整理的物品資料 昨天打開電腦一看就憑空消失了 垃圾筒也沒有 其他資料健在 請問我有可能是擋到誰的財路 結果延著po文的ip被駭了嗎? 我該怎麼做才能知道發生什麼事atat 任何指教都非常感謝andgt;andlt; - ...

CSA Taiwan Wargame 報名

Margaret avatar
By Margaret
at 2019-06-13T00:51
有缺成員的嗎? 想玩看看 http://2019.infosec.org.tw/wargame.html 第一階段 [ 紅色警戒 ] 發佈日期:2019年7月8日中午12點起,至7月11日中午12點止。 攻擊對象:目標企業的網路服務主機。 攻擊手法:採用「弱點主機攻防」方式,進行「應用服務阻斷攻擊」以 ...

手機網卡上網資安問題

Carol avatar
By Carol
at 2019-06-03T19:06
小弟目前大陸出差, 有在pchoxx買了張網卡。 嗯,很爛。 偏遠地區是只能發不能收 但我突然想到, 我用這張網卡上網, 打網銀、股市, 會不會有資料被竊取的風險呢? 假設中間沒有經過第三方惡意竊取, 就單純是因為用這張非大電信業者 的網路卡,會有這種資安風險嗎? 非常好奇,所以想詢問神人,謝謝。 ...

chrome突然自動開啟一堆分頁

Gary avatar
By Gary
at 2019-06-01T16:21
問題內容: 早上在用電腦看YouTube 結果chrome上面的分頁欄突然跳出很多個分頁然後又自己關閉 由於實在來的太快我有點來不及反應 後來去找了紀錄 發現都是一堆看不懂的東西 點開開也打不開 都是空白 附上截圖 請問這樣是安全上有什麼問題嗎? 不知道要怎麼辦只好來這裡問 如果有違反版規請告知 謝謝 ...

NGINX RCE

Lucy avatar
By Lucy
at 2019-06-01T10:58
https://github.com/nginx/njs/issues/159 https://twitter.com/alisaesage/status/1134400951043874816 https://twitter.com/notdan/status/1134559331989434368 ...