java常见面试题之文件上传漏洞是什么?

java面试的时候总是会有很多的面试题在等着大家,内容也是五花八门各种都有,这也就要求我们能够熟练掌握java的知识,才能游刃有余地面对。今天来介绍一下怎么解决文件上传漏洞的问题,一起来看看吧。

问题一:什么是文件上传漏洞

答:文件上传漏洞,指的是用户上传一个可执行的脚本文件,并通过此脚本文件获得了执行服务端命令的能力。

许多第三方框架、服务,都曾经被爆出文件上传漏洞,比如很早之前的Struts2,以及富文本编辑器等等,可被攻击者上传恶意代码,有可能服务端就被人黑了。

如何防范文件上传漏洞?

文件上传的目录设置为不可执行。

1.判断文件类型。在判断文件类型的时候,可以结合使用MIME Type,后缀检查等方式。因为对于上传文件,不能简单地通过后缀名称来判断文件的类型,因为攻击者可以将可执行文件的后缀名称改为图片或其他后缀类型,诱导用户执行。

2.对上传的文件类型进行白名单校验,只允许上传可靠类型。

3.上传的文件需要进行重新命名,使攻击者无法猜想上传文件的访问路径,将极大地增加攻击成本,同时向shell.php.rar.ara这种文件,因为重命名而无法成功实施攻击。

4.限制上传文件的大小。

5.单独设置文件服务器的域名。

再补充一下另外的两个问题。

问题二:DDos攻击是什么?

答:客户端向服务端发送请求链接数据包,服务端向客户端发送确认数据包,客户端不向服务端发送确认数据包,服务器一直等待来自客户端的确认

没有彻底根治的办法,除非不使用TCP

DDos预防:

1.限制同时打开SYN半链接的数目

2.缩短SYN半链接的Time out时间

3.关闭不必要的服务

问题三:重要协议分布图

答:如下图

java常见面试题

上面这几个问题都是我们在java面试过程当中可能会遇到的,所以这也就要求我们要能够提前知道答案。如果你想要了解更多Java面试题,敬请关注奇Q工具网。

推荐阅读:

java spring mvc面试题,九大常见问答题

java spring面试题,八大常见问答题

java常见面试题:隐式对象有哪些?