表單在網頁中主要負責數據採集功能。一個表單有三個基本組成部分: 表單標籤:這裏麪包含了處理表單數據所用CGI程序的URL以及數據提交到服務器的方法。 表單域:包含了文本框、密碼框、隱藏域、多行文本框、複選框、單選框、下拉選擇框和文件上傳框等。 表單按鈕:包括提交按鈕、復位按鈕和通常按鈕;用於將數據傳送到服務器上的CGI腳本或者取消輸入,還能夠用表單按鈕來控制其餘定義了處理腳本的處理工做。php
超文本標記語言:HTML
可擴展標記語言:XML
腳本語言:ASP、PHP、Script、JavaScript、VBScript、Perl、Python、ColdFusion、Java、JSPhtml
PHP語言、JSP語言。前端
此次實驗咱們主要實踐了關於web中SQL的使用,以及一些簡單的SQL的攻擊方式。這幾個攻擊方式讓我感受邏輯上的漏洞真的是十分巧妙的,也是很是難以防範的。java
經過apchectl start
打開apahce。mysql
在kali瀏覽器中輸入localhost:80,觀察Apache正常工做。
web
create database 庫名; use 庫名; create table tb1 (userid VARCHAR(100),username VARCHAR(45),password VARCHAR(256),enabled VARCHAR(5));
insert into tb1(userid,username,password,enabled) values(1,'20155204','5204',"TRUE");
在/var/www/html目錄下編寫一個wh1.html(在以前的wh.html上修改),設置將wh1.html的表單提交到whL.php。sql
編寫wh.php,經過php實現對數據庫的鏈接,並顯示用戶是否能成功登陸。數據庫
<?php $uname=($_POST["username"]); $pwd=($_POST["password"]); /* echo $uname; */ $query_str="SELECT * FROM tb1 where username='$uname' and password='$pwd';"; /* echo "<br> {$query_str} <br>";*/ $mysqli = new mysqli("127.0.0.1", "wh15204", "5204", "db1"); /* check connection */ if ($mysqli->connect_errno) { printf("Connect failed: %s\n", $mysqli->connect_error); exit(); } echo "connection ok!"; /* Select queries return a resultset */ if ($result = $mysqli->query($query_str)) { if ($result->num_rows > 0 ){ echo "<br> Welcome login Mr/Mrs:{$uname} <br> "; } else { echo "<br> login failed!!!! <br> " ; } /* free result set */ $result->close(); } $mysqli->close(); ?>
跨站腳本攻擊(Cross Site Scripting),爲不和層疊樣式表(Cascading Style Sheets, CSS)的縮寫混淆。故將跨站腳本攻擊縮寫爲XSS。XSS是一種常常出如今web應用中的計算機安全漏洞,它容許惡意web用戶將代碼植入到提供給其它用戶使用的頁面中。好比這些代碼包括HTML代碼和客戶端腳本。攻擊者利用XSS漏洞旁路掉訪問控制——例如同源策略(same origin policy)。這種類型的漏洞因爲被駭客用來編寫危害性更大的phishing攻擊而變得廣爲人知。對於跨站腳本攻擊,黑客界共識是:跨站腳本攻擊是新型的「緩衝區溢出攻擊「,而JavaScript是新型的「ShellCode」。後端
在登陸的用戶名中輸入:5204,讀取/var/www/html目錄下的圖片:瀏覽器