20165214 2018-2019-2 《網絡對抗技術》Exp8 Web基礎 Week11—12

《網絡對抗技術》Exp8 Web基礎 Week11—12

1、實驗目標與內容

  • 1.實踐內容php

    • (1).Web前端HTMLhtml

    • 能正常安裝、啓停Apache。理解HTML,理解表單,理解GET與POST方法,編寫一個含有表單的HTML。前端

    • (2).Web前端javasciptjava

    • 理解JavaScript的基本功能,理解DOM。編寫JavaScript驗證用戶名、密碼的規則。mysql

    • (3).Web後端:MySQL基礎:正常安裝、啓動MySQL,建庫、建立用戶、修改密碼、建表web

    • (4).Web後端:編寫PHP網頁,鏈接數據庫,進行用戶認證sql

    • (5).最簡單的SQL注入,XSS攻擊測試數據庫

  • 2.功能描述:用戶能登錄,登錄用戶名密碼保存在數據庫中,登錄成功顯示歡迎頁面。後端

  • 3.一些問題瀏覽器

    • (1)什麼是表單
    • 答:表單(form)是一個包含表單元素的區域,表單元素是容許用戶在表單中輸入信息的元素,表單在網頁中主要負責數據採集功能;一個表單有三個基本組成部分:表單標籤、表單域、表單按鈕。

    • (2)瀏覽器能夠解析運行什麼語言
    • 答:HTML、XML、PHP、JavaScript、ASP等。

    • (3)WebServer支持哪些動態語言
    • 答:JavaScript、ASP、PHP等腳本語言。

2、實驗步驟

Web前臺的搭建

  • 首先了解一下GET和POST兩個方法
    • 兩個方法都是像後臺傳參的一種方法。
    • 最直觀的區別就是GET把參數包含在URL中,POST經過request body傳遞參數
    • GET產生一個TCP數據包;POST產生兩個TCP數據包(火狐就只有一個)。
    • GET請求參數會被完整保留在瀏覽器歷史記錄裏,而POST中的參數不會被保留
    • .....................................................................
  • 在命令行輸入service apach2 start來啓動阿帕奇服務;能夠經過在瀏覽器輸入127.0.0.1,若是出現以下頁面,說明阿帕奇啓動成功。

  • 進入/www/var/html文件夾,輸入vi logintest.html建立登陸前臺的html,輸入頁面代碼:

  • 測試logintest.html當帳號或者密碼爲空時提交表單是否會彈出提示:

  • 進入/www/var文件夾,輸入vi registertest.html建立註冊前臺的html,輸入頁面代碼:

  • 測試registertest.html當帳號或者密碼爲空時提交表單是否會彈出提示:

數據庫搭建

  • 輸入/etc/init.d/mysql start啓動數據庫

  • 輸入mysql啓動數據庫

  • 輸入show databases;查看目前有哪些數據庫;

  • 輸入use mysql;,進入mysql數據庫;

  • 用戶名和密碼默認是放在mysql下的user表格的。輸入···select user, password from user;```查看登陸信息

  • 輸入update user set password=PASSWORD("zwy") where user='root';更新密碼

  • 輸入create database zwy;建立數據庫

  • 輸入create table userinfo (user VARCHAR(100),password VARCHAR(100));來建立一個表格,包含字段爲user和password;.

  • 輸入insert into userinfo values('zwy','5214');插入一條信息;

  • 輸入select * from userinfo;查看錶格;

  • 輸入alter table userinfo add primary key (user);設置表格主鍵(用戶名不能重複);

  • 輸入grant select,insert,update,delete on zwy.* to zwy@localhost identified by "5214";建立新用戶

  • 再到mysql數據庫中的user表格進行查看,發現信息已經添加,口令密文存儲。

後臺搭建

  • /www/var/html文件夾建立login.php,輸入代碼:

  • /www/var/html文件夾建立register.php,輸入代碼:

測試(不當心誤刪圖片,失去了背景)

  • 一、用戶名或者密碼爲空上面已經測試過,這裏再也不測試;

  • 二、登陸測試:輸入錯誤的帳號密碼

  • 三、登陸測試:輸入正確的帳號密碼

  • 四、註冊測試:輸入存在的帳號

  • 五、註冊測試:輸入不存在的帳號

  • 六、註冊後的登陸測試:

簡單的數據庫注入

SQL注入,就是經過把SQL命令插入到Web表單提交或輸入域名或頁面請求的查詢字符串,最終達到欺騙服務器執行惡意的SQL命令。具體來講,它是利用現有應用程序,將(惡意的)SQL命令注入到後臺數據庫引擎執行的能力,它能夠經過在Web表單中輸入(惡意)SQL語句獲得一個存在安全漏洞的網站上的數據庫,而不是按照設計者意圖去執行SQL語句。

  • 在登陸界面的用戶名輸入' or 1=1#,密碼任意輸入,點擊登陸,登陸成功:

簡單的XSS攻擊

跨站腳本攻擊(Cross Site Scripting),爲不和層疊樣式表(Cascading Style Sheets, CSS)的縮寫混淆。故將跨站腳本攻擊縮寫爲XSS。XSS是一種常常出如今web應用中的計算機安全漏洞,它容許惡意web用戶將代碼植入到提供給其它用戶使用的頁面中。好比這些代碼包括HTML代碼和客戶端腳本。攻擊者利用XSS漏洞旁路掉訪問控制——例如同源策略(same origin policy)。這種類型的漏洞因爲被黑客用來編寫危害性更大的phishing攻擊而變得廣爲人知。

  • 在登陸界面的用戶名輸入<img src="bak.jpg" />,密碼任意輸入,點擊登陸,彈出圖片:

3、遇到的問題

  • 一、設置背景時有一張圖片始終沒法做爲背景
  • 解決方法:跟圖片比例有關係。修改圖片比例後解決了問題。

  • 二、用瀏覽器訪問php文件時,沒有顯示頁面,而是彈出下載、打開框。
  • 解決方法:首先檢查阿帕奇,發現沒問題;折騰了幾下事後,重啓了阿帕奇,解決了問題。

4、心得體會

經過此次實驗,簡單瞭解了前端、後臺和數據庫的搭建,初步嘗試了簡單的數據庫注入還有

相關文章
相關標籤/搜索