20145306 张文锦 网络攻防 web基础
20145306 网络攻防 web基础
实验内容
WebServer:
掌握Apache启停配置修改(如监听端口)
前端编程:
熟悉HTML+JavaScript。了解表单的概念编写不同的HTML网页,放入到Apache工作目录,从浏览器访问。
后端编程:
了解GET/POST方法的不同,尝试使用GET/POST方法传输用户在浏览器中的输入,并在后台用PHP读出参数,根据讲出参数的不同,返回不同的内容给浏览器。
数据库编程
在MySql客户端中练习基本SQL操作:建库、建表、数据增、删、改、查.在PHP中调用MySql库进行相应数据库操作.
实验体会
本次实验是实现web工程,利用HTML语言写前端页面,后台的处理用php来对前端传来的数据进行处理,mysql数据库的创建,以及sql语句查询数据库内容,还有最后sql注入,xss攻击。实验内容较多。sql注入部分攻击方法SQL要在理解sql语言的情况,后台的程序去执行我们填充的指令来实现登陆成功或者是像数据库中增加内容。
过程
- appche
端口修改为80,用netstat查看占用端口进程,关闭该进程,开启apache服务。
前端页面
- 进入appache的工作目录下。
- 并且创建一个页面。

php
login5306.php

在浏览器中输入localhost/145336login.html;输入用户名,密码;然后提交表单,之后跳转php页面,回显输入的用户名密码信息。

mysql数据库
- 启动数据库
- 创建一个新的数据库;
- 建立一张新表 zwj,有username和password两个字段,最长各20个字符;
- 添加记录;
- 数据库表;

实现一个连接数据库的登录界面
*结合上面所完成的页面。
- login5306.php,145306login.html

- 输入用户名密码正确登录成功

SQL注入
SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令,包括以前见到的在地址栏中输入一些特殊的命令,通过服务器的反馈信息也能够获得后台数据库的部分信息。下面就是一个简单的SQL注入
- 在用户名输入框中输入' or 1=1#,这时候随便输入一个密码,就可以实现登录成功。


- 输入用户名' or 1=1#后 select 语句就变成了
select * from zwj where username='' or 1=1#' and password=''
sql出入 向user表中增加一条记录,从而实现登录成功。
- 修改.php文件使的登录数据库时执行多条数据库指令。

进入页面,在用户名一栏上写 ';insert into zwj values('add','20145306');#
- #是注释掉后面的内容,在执行数据库语句是实际上执行的不止是查询语句SELECT * FROM zwj WHERE username='' 还有insert into zwj values('add','20145306') 向数据库中增加一条记录。
使用新加入的记录在页面登录


- 在用户名输入框中输入' or 1=1#,这时候随便输入一个密码,就可以实现登录成功。
xss攻击
- xss攻击(Cross Site Scripting),跨站脚本攻击是新型的“缓冲区溢出攻击,就是将恶意代码例如jsp代码植入到提供给其它用户使用的页面中,从而获取用户主机的一些信息。
输入到用户名框中便可以得到/var/www/html 中的一张图片。

WebServer支持哪些动态语言?
- ASP,PHP,JSP
什么是表单?
- 表单是一张表,具体内容可以包括输入框,单选框,复选框等一些元素。表单内容可以提交到其他页面。
浏览器可以解析运行什么语言?
- 超文本标记语言 html ;脚本语言 ASP、PHP、Script、JavaScript、VBScript、Perl、Python、ColdFusion、Java、JSP;可扩展标记语言:XML
- xss攻击(Cross Site Scripting),跨站脚本攻击是新型的“缓冲区溢出攻击,就是将恶意代码例如jsp代码植入到提供给其它用户使用的页面中,从而获取用户主机的一些信息。
20145306 张文锦 网络攻防 web基础的更多相关文章
- 网络对抗——web基础
网络对抗--web基础 实践内容 (1)Web前端HTML (2)Web前端javascipt (3)Web后端:MySQL基础:正常安装.启动MySQL,建库.创建用户.修改密码.建表 (4)Web ...
- 20145313张雪纯Exp8 Web基础
回答问题 (1)什么是表单 表单在网页中主要负责数据采集功能.一个表单有三个基本组成部分: 表单标签:这里面包含了处理表单数据所用CGI程序的URL以及数据提交到服务器的方法. 表单域:包含了文本框. ...
- 20145306 网路攻防 web安全基础实践
20145306 网络攻防 web安全基础实践 实验内容 使用webgoat进行XSS攻击.CSRF攻击.SQL注入 XSS攻击:Stored XSS Attacks.Reflected XSS At ...
- 20145306 《网络攻防》 MSF基础应用
20145306张文锦<网络对抗>MSF应用 Adobe阅读器渗透攻击 两台虚拟机,其中一台为kali,一台为windows xp sp3,并保证两台虚拟机可以ping通. 实验过程 进入 ...
- 20155201 网络攻防技术 实验八 Web基础
20155201 网络攻防技术 实验八 Web基础 一.实践内容 Web前端HTML,能正常安装.启停Apache.理解HTML,理解表单,理解GET与POST方法,编写一个含有表单的HTML. We ...
- 20155201 网络攻防技术 实验九 Web安全基础
20155201 网络攻防技术 实验九 Web安全基础 一.实践内容 本实践的目标理解常用网络攻击技术的基本原理.Webgoat实践下相关实验. 二.报告内容: 1. 基础问题回答 1)SQL注入攻击 ...
- 20155211 网络攻防技术 Exp08 Web基础
20155211 网络攻防技术 Exp08 Web基础 实践内容 Web前端HTML,能正常安装.启停Apache.理解HTML,理解表单,理解GET与POST方法,编写一个含有表单的HTML. We ...
- 20155235 《网络攻防》 实验九 Web安全基础
20155235 <网络攻防> 实验九 Web安全基础 实验内容 SQL注入攻击 XSS攻击 CSRF攻击 WebGoat WebGoat是OWASP组织研制出的用于进行web漏洞实验的应 ...
- 20155235 《网络攻防》 实验八 Web基础
20155235 <网络攻防> 实验八 Web基础 实验内容 Web前端HTML(0.5分) 能正常安装.启停Apache.理解HTML,理解表单,理解GET与POST方法,编写一个含有表 ...
随机推荐
- DS作业·写了一个链表
用struct手写了个list 有push_back,push_front,insert,erase reserve,size,setpos,rbegin 功能. 坑:一开始想用template< ...
- sqoop学习笔记
#################################################################################################### ...
- Python哈希表的例子:dict、set
dict(字典) Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度. 和list比较,dic ...
- TP5.0 controller下分版本 分块 分目录写法访问
这个写法是在api模块下的controller目录下又分出了v1和以后未知的v(x)版本,这个时候需要配置路由来访问这个接口类似于这种形式: http://www.xx.com/index.php/a ...
- __getattr__,settr
__getattr__ 如果属性查找在实例以及对应的类中(通过__dict__)失败, 那么会调用到类的__getattr__函数, 如果没有定义这个函数,那么抛出AttributeError异常. ...
- SQL SERVER 聚集索引 非聚集索引 区别
转自http://blog.csdn.net/single_wolf_wolf/article/details/52915862 一.理解索引的结构 索引在数据库中的作用类似于目录在书籍中的作用,用来 ...
- sql server dba常用概念、操作分析char,varchar,nvarchar,varchar(max)
1.设计表时如何使用char 与 varchar? 请写出你对varchar(max)的理解. 1.设计表时如何使用char 与 varchar? 请写出你对varchar(max)的理解. char ...
- 010-jdk1.8版本新特性二-Optional类,Stream流
1.5.Optional类 1.定义 Optional 类是一个可以为null的容器对象.如果值存在则isPresent()方法会返回true,调用get()方法会返回该对象. Optional 是个 ...
- shell date 获取昨天日期
使用date -d 选项: date +"%Y%m%d" -d "+n days" 今天的后n天日期 date +" ...
- [LeetCode] 67. Add Binary_Easy tag: String
Given two binary strings, return their sum (also a binary string). The input strings are both non-em ...