开发一个webapp,用户可以将图像上传到服务器。 我想确保用户上传图像,而不是其他任何内容,如反向shell或恶意内容。因此,我无法使用扩展程序,因为您可以轻松伪造它。
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;博士:我如何确定文件类型以防止反向shell?
答案 0 :(得分:0)
您需要应用此类文件过滤器,
OpenFileDialog dlg = new OpenFileDialog();
dlg.Filter = "All files (*.*)|*.*|PNG Images (*.png)|*.png";