指令噴射所以我有一個使用ImageMagick
一個輔助和裏面的方法,其上的命令行強制zbar
到從圖像中提取QR數據。圖像源必須是參數化的。刪除在導軌
qr_code_data = %x(zbarimg -q #{src})
brakeman
給了我一個command injection
警告這裏,很明顯。只使用backticks
給出了同樣的警告,而system
會產生所需的結果,它返回true
,而不是輸出。我不想使用QR解碼包裝/寶石或Open3。我需要知道是否可以將我的圖像源作爲參數進行清理,以避免命令注入,除非使用我提到的兩個選項。
ImageMagick通常支持使用STDIN進行輸入。試試'zbarimg -q png:-'。用你的實際圖像格式替換'png'。然後使用[IO.popen](http://ruby-doc.org/core-2.3.1/IO.html#method-c-popen)而不是'system'。我並不是100%確定這是可行的,並且沒有準備好合適的測試系統。祝你好運。 – Eric