2013-07-12 89 views
4

要減少網站上可能的攻擊媒介的數量,限制格式的最佳方式是什麼?Python Imaging Library可以讀取一組已知的優質編解碼器(GIF,JPEG,PNG)。限制PIL圖像加載的格式

這樣用戶就不能提交更奇特的格式,並利用可能的編解碼器錯誤來做緩衝區溢出等風格的攻擊。

最好在運行時。

+1

你用什麼讓用戶選擇一個文件來提交?一個瀏覽到文件的彈出式窗口或只是一個輸入URL在這裏的文本框?爲什麼不在那裏攔截不需要的文件而不是在PIL中? – Junuxx

+2

@Junuxx做客戶端檢查並不能保護您的服務 –

回答

3

在將文件/緩衝區傳遞給PIL之前,可以使用python-magic來檢查接受的mimetypes。