一.Blog项目部署
在进行实训6web安全加固的任务中,需要布置blog项目,主要用到的软件有:myeclipse,sqlserver。首先打开sqlserver服务器,然后连接数据库,将已有的db_mediaBlog附加到数据库中,在此过程之前要先将两个db文件作出如下操作:右键属性~安全~Administrators~编辑~将安全控制设置为允许。下图的两个文件
打开myeclipse,将blog项目导入。导入后文件会报错:1.在properties中修改为UTF-8
2.在DB.java中将密码进行修改。(注意:这2步骤不能颠倒。否则会报错;解决方法:把项目删除后重新进行导入,然后先将字符编码更改,再对DB.java文件进行语句的修改)
然后,部署tomcat,就可以run as运行,在浏览器中打开即可。
二.SQL注入防范
1、部署并运行Blog项目,在用户登录界面用户名处输入万能密码admin' or 1=1 --',密码处输入任意字符,点击登录,观察是否能绕过后台登录系统:这时候由于并没有对代码进行补充,所以即使用万能密码也是不可以直接登录上网页的。
2、修改登录模块的SQL查询相关语句如下所示:在UserDao.java中的适当位置添加如下代码操作。
3、再次运行项目,使用万能密码admin' or 1=1 --'进行登录,观察是否能够成功登录:重新运行项目后,我们发现可以使用万能密码绕过去直接进行登陆。
三.上传攻击防范
1、运行项目,在网站中寻找能够上传文件的位置,尝试上传菜刀马。
2、分析项目源代码,找到项目在哪里对上传文件类型做了何种限制。
3、将菜刀马的文件后缀修改为图片类型,观察是否能够上传。
4、尝试获取图片地址,并使用中国菜刀进行连接,观察是否能够正常使用。
5、注释掉文件上传限制,上传jsp后缀的菜刀马,观察是否能够正常使用。
我们从PhotoServlet.java中可以找到相关代码,通过对代码的修改,例如注释操作,我们就可以直接在图片界面不受限制地上传.jsp文件。
四.心得体会
今天是实训周的最后一天,这些天通过做训练感受到了网络安全的重要性,如果一个网站没有很好的定期维护网站可能出现的漏洞,就会被一些有心之人进行利用,就像前几年的酒店登记泄露事件,造成了许多用户的住户信息以及各种隐私遭到了泄露,因此,在网站的运行过程中,前后端的交互是必不可少的,同时也要注意对网站的定期维修,以便能找到网站潜在的漏洞,并进行修复处理。最后,通过这些天的学习,让我对计算机的安全也产生了兴趣,感觉计算机其实并不全是很枯燥乏味的编代码,在这其中其实有很多有意思的东西值得我们去探索,而计算机领域的工作也并非只有我们口中所谓的IT程序员,敲代码这么一种类型。综上,所有仅叙述于实训周的总结记录。