ASP、PHP、JSP、Python、JavaScript、Ruby等javascript
Apachephp
apachectl start
命令开启Apach,使用netstat -aptn
命令查看端口占用由于端口号80已经被占用(上次实验设置的),因此先修改/etc/apache2/ports.conf
里的端口为5318
后从新开启:html
localhost:5318
来检查是否正常开启,这里能够看到打开了上次实验的网页,开启正常:简单的网页编写java
cd /var/www/html
,新建一个5318.html
文件编写一个含有表单的htmlmysql
localhost:5318/5318.html
,成功出现以下界面
javascript相关web
编写验证用户名和密码的规则:(好比用户名和密码不能为空)sql
<script> function nameText(){ var name= document.getElementByIdx_x ("username"); var divID= document.getElementByIdx_x ("divName"); divID.innerHTML=""; if(name.value==""){ divID.innerHTML="用户名不能为空"; return false; } } function passText(){ var pass= document.getElementByIdx_x ("password"); var divIP= document.getElementByIdx_x ("divPass"); divIP.innerHTML=""; if(pass.value==""){ divIP.innerHTML="密码不能为空"; return false; } } </script>
PHP测试数据库
新建一个PHP测试文件vi /var/www/html/test.php,输入以下apache
<?php echo ($_GET["A"]); include($_GET["A"]); echo "php page 5212!<br>"; ?>
localhost:5318/test.pgp
,能够看见以下界面,测试成功
MySQL基础编程
/etc/init.d/mysql start
打开mysql服务输入mysql -u root -p
,并根据提示输入密码,默认密码为p@ssw0rd
,进入MySQL:
能够经过以下方式更改密码:
·输入use mysql;
,选择mysql数据库
·输入select user, password, host from user;
,mysql库中的user表中存储着用户名、密码与权限
·输入UPDATE user SET password=PASSWORD("新密码") WHERE user='root';
·输入flush privileges;
,更新权限
·输入quit
退出
在Mysql中建库建表,输入以下
CREATE SCHEMA 库表的名称
;
CREATE TABLE 库表的名称
.users
(userid
INT NOT NULL COMMENT '',username
VARCHAR(45) NULL COMMENT '',password
VARCHAR(256) NULL COMMENT '',enabled
VARCHAR(5) NULL COMMENT '',
PRIMARY KEY (userid
) COMMENT '');
php+mysql编写网页
在/var/www/html
文件夹下输入vim login.html
,编写登陆网页
im login.php
,经过php实现对数据库的链接localhost:5318/login.html
访问本身的登录页面
SQL注入
' or 1=1#
,密码随便输入,这时候的合成后的SQL查询语句为select * from users where username='' or 1=1#' and password=md5('')
如下的两句sql语句等价:select * from users where username='' or 1=1#' and password=md5('')
select * from users where username='' or 1=1
经过SQL注入将用户名和密码保存在数据库中
';insert into users(userid,username,password,enabled) values(5318,'145318',password("145318"),"TRUE");#
145318
密码145318
,成功
XSS攻击
进行一个简单的测试,在用户名输入框中输入<img src="20145318.jpg" />20145318</a>
读取/var/www/html
目录下的图片:
发帖和会话管理的实现
咱们能够利用PHP实现会话管理,这部分实践能够详细参考ltc同窗的博客与代码。
将代码依旧放在/var/www/html
目录下,在浏览器中输入http://localhost:5318/logIn.php
,进行登陆:
start a new post!
发帖,进入以下界面:
CHECK
查看发过的帖子,可是却什么内容都没有,因为这个操做是经过从data.txt
文件中读取以前发帖时保存的记录来查看发帖内容,可是在/var/www/html
目录下根本没有找到这个文件,这就说明以前建立也没有成功,后面发现/var/www/html
底下文件默认的都是属于root的,其余用户没有权限进行操做,因此咱们能够先使用touch data.txt
建一个data.txt
文件,再对该文件进行加权: