Php 使用codeigniter中的图像头进行图像验证以防止黑客攻击

Php 使用codeigniter中的图像头进行图像验证以防止黑客攻击,php,forms,codeigniter,validation,Php,Forms,Codeigniter,Validation,我想要一个验证图像文件的方法 我尝试过使用图像类型及其格式和大小进行验证。我需要另一个高精度的验证 我这样问是因为我的网站被一个上传的包含代码的图像文件入侵了。黑客以.png格式编写了代码,并将其作为图像上传到我的网站。从那一刻起,他开始入侵我的网站 请帮助我获得一个高验证的图像文件使用它的头 我的确认如下: function upload() { //set preferences $config['upload_path'] = './uploads

我想要一个验证图像文件的方法

我尝试过使用图像类型及其格式和大小进行验证。我需要另一个高精度的验证

我这样问是因为我的网站被一个上传的包含代码的图像文件入侵了。黑客以.png格式编写了代码,并将其作为图像上传到我的网站。从那一刻起,他开始入侵我的网站

请帮助我获得一个高验证的图像文件使用它的头

我的确认如下:

 function upload()
    {
        //set preferences
        $config['upload_path'] = './uploads/';
        $config['allowed_types'] = 'txt|pdf';
        $config['max_size']    = '100';

        //load upload class library
        $this->load->library('upload', $config);

        if (!$this->upload->do_upload('filename'))
        {
            // case - failure
            $upload_error = array('error' => $this->upload->display_errors());
            $this->load->view('upload_file_view', $upload_error);
        }
        else
        {
            // case - success
            $upload_data = $this->upload->data();
            $data['success_msg'] = '<div class="alert alert-success text-center">Your file <strong>' . $upload_data['file_name'] . '</strong> was successfully uploaded!</div>';
            $this->load->view('upload_file_view', $data);
        }
    }
函数上传()
{
//设置首选项
$config['upload_path']='./uploads/';
$config['allowed_types']='txt | pdf';
$config['max_size']='100';
//加载上载类库
$this->load->library('upload',$config);
如果(!$this->upload->do_upload('filename'))
{
//案例失败
$upload_error=array('error'=>$this->upload->display_errors());
$this->load->view('upload\u file\u view',$upload\u error);
}
其他的
{
//成功案例
$upload_data=$this->upload->data();
$data['success\u msg']=“您的文件。$upload\u data['file\u name']”。已成功上载!';
$this->load->view('upload\u file\u view',$data);
}
}

您允许文件类型为txt和pdf。你应该使用

$config['allowed_types'] = 'gif|jpg|png';

如果您正在上载的是图像。

您允许文件类型为txt和pdf。你应该使用

$config['allowed_types'] = 'gif|jpg|png';

如果上传的是图像。

在将其存储到DB之前重命名。使用php mime内容类型检查文件:在将其存储到DB之前重命名。使用php mime内容类型检查文件:它将只验证我需要验证图像内容的图像类型。.可以在.png文件中编写代码。.在我的情况下,我有看到一个.png格式的文件,该文件无法作为图像打开。我使用记事本查看该文件,其中有一些.png格式的代码。因此,最好提供有关图像头的验证。上传文件上载数据数组时,字段为\u image,在这种情况下,这不是您需要检查的字段。它将只验证图像的类型我需要验证图像的内容..可以用.png文件编写代码..在我的例子中,我看到了一个.png格式的文件,该文件不能作为图像打开。我使用记事本查看它,有一些.png格式的代码集..所以最好提供关于图像的验证Headsonce上传的文件上传数据数组中有字段is_image,在这种情况下,这不是您需要检查的字段。