首页 > 代码库 > 20145331魏澍琛《网络对抗》Exp8 Web基础
20145331魏澍琛《网络对抗》Exp8 Web基础
20145331魏澍琛《网络对抗》Exp8 Web基础
实践内容:
1、简单的web前端页面(HTML、CSS等)
2、简单的web后台数据处理(PHP)
3、Mysql数据库
4、一个简单的web登陆页面例子
5、SQL注入、XSS攻击
Web前端:HTML基础
1、先将apache的端口号设为80(上节已经设置好了),接着结束掉占用80端口的进程,再启动apache。 2、在/var/www/html目录下创建20145331wsc.html文件,即前端文件。
附:检查第一步是否成功只需在浏览器中输入localhost:80,显示的是上节课的那个假冒的网站。
3、接下来就是html编程了,程度有限,就简单编了一个用户登录的界面。
4、在浏览器的网址输入栏输入相应的端口号和html文件名,查看一下刚刚编的前端的成果,咦竟然还挺好看。
PHP测试
1、第三张图看到我将action设置为20145331wsc.php,即跳转到这个php文件上去,那我还没有写这个php文件,点击提交当然显示找不到该文件。
2、没有写那就开始写呗,先写了一个简单的php文件。
3、写好和html文件保存在一个目录下,再点击submit就可以跳转了。
Web前端:javascript基础
1、JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。
2、从上学期的java web编程书里找出一个简单的例子,他会警告你用户名和密码不能为空。
<script language="javascript">
<script language="javascript"> function isEmpty(){
var id = document.login.usrname.value ;
var pwd = document.login.password.value ;
if (id ==""){
alert("请输入用户名!");
return false ;
}
if (pwd ==""){
alert("请输入密码!");
return false ;
}
}
Web后端:MySQL基础
这个东西说白了就相当于数据库,不难不过要注意好多细节,比如输命令时后面一定要有分号!!!
1、先开启mysql服务,并且根据初始密码进入mysql。(p@ssw0rd)
2、显示一下里面的数据,了解一下。
3、改一下密码,下次就可以一只手输密码了;再更新一波权限:
4、退出,再用新密码进入,然后干正事,创建一个新的数据库,看看创建成功没有,成功后使用它。
5、一个数据库可以有很多表,那我们在新的数据库中创建新的数据表。
6、有了数据表就往里面写数据,就存个我自己的名字和学号吧(把他们作为用户名和密码),查一下看存进去了没有。
Web后端:PHP基础
PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。PHP 独特的语法混合了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML(标准通用标记语言下的一个应用)文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。
1、把第一步创建的php文件用码云上的代码加工一下,这里要注意要在原文件覆盖上自己前面创建的数据表的名字,新设定的密码,和新创建的数据库的名字。
2、改好了以后,用数据表中存的数据登录一下看看:
3、随便输一个再登,数据表中没有记录,肯定不行(不过还是建立了连接,说明数据库连的没有问题):
到此,web编程部分结束,博客写的很流畅不过过程太遭罪了!哭哭
SQL注入
1、用户名输入‘ or 1=1#,密码随便写,登录一下(这步忘截图了。。。) 2、结果就是依然登录成功,试想一下如果这是魔兽世界的登录界面,感慨万千啊:
3、接着用户名输入‘;insert into lxmtable values(‘zy‘,‘0304‘);#,这就是刚刚往数据表里添加数据的命令,然后密码随便输,出现下面的页面:
4、不过这时你在看看数据表,会发现新增加了一条zy的记录:
XSS攻击测试
1、将一个图片放到之前html文件的同目录下,用户名输入如下所示,可以读取到他:
实验总结与体会
我的java web编程能力不怎么样,所以做本次实验有些吃力,但做完后想想,大体的逻辑都ok,也都能理解(好吧确实也不难),不过无论是输命令还是编程还是要在对细节的把握上多留心一下,不能说只会个大概;实验遇到问题:如php那里,输入正确的用户名密码后,只能建立连接而不能成功登录。最后在蔡馨煜同学的帮助下(这个不是不查实验的暗示!)发现还是php文件的一行代码有误,所以说,细节真的很重要;同时也说明遇到问题时,要冷静分析,到底是哪个模块出了问题,从而做针对性的更改。总之,实验过程很辛苦,结果很满意,是一次很棒的体验;此外这次实验提高了我分析问题的能力,遇到问题,分析并解决问题,这才是实验的意义和老师安排实验的目的所在。辛苦很长时间做出来了预期的效果,还是很有成就感的。
基础问题回答
1、什么是表单?
表单啊,我感觉就是一个框,能填写数据,能选择数据等,主要用来在网页中进行数据收集。
一个表单有三个基本组成部分:表单标签、表单域、表单按钮。
2、浏览器可以解析运行什么语言?
html、xml、PHP、JavaScript等脚本语言。
3、WebServer支持哪些动态语言?
JavaScript、JSP、PHP等
20145331魏澍琛《网络对抗》Exp8 Web基础