ユーザーがサーバーに画像をアップロードできる webapp を開発しています。リバースシェルや悪意のあるものなど、ユーザーが画像をアップロードすることを確認したいと思います。したがって、拡張機能は簡単に偽造できるため、使用できません。
var dlg = new OpenFileDialog();
//dlg.Filter = "";
dlg.Multiselect = false;
bool? openClicked = dlg.ShowDialog();
if (openClicked == true)
{
Stream stream = dlg.File.OpenRead();
BinaryReader binary = new BinaryReader(stream);
//Determine filetype here.
byte[] data = binary.ReadBytes((int) stream.Length);
これを行う簡単な方法が必要ですか?
Tl;dr: リバース シェルを防ぐためにファイル タイプを特定するにはどうすればよいですか?