1. 程式人生 > >20154312 曾林 Exp8 web基礎

20154312 曾林 Exp8 web基礎

哪些 tar class html database 出現 ide 多條 info

1.基礎問題回答

1.1.什麽是表單

1.2.瀏覽器可以解析運行什麽語言

1.3.WebServer支持哪些動態語言

2.實踐總結與體會

3.實踐過程記錄

----3.1.Web前端:HTML基礎

----3.2.Web前端:javascipt基礎

----3.3.Web後端:MySQL基礎

----3.4.Web後端:PHP基礎

----3.5.SQL註入

----3.6XSS攻擊測試

1.基礎問題回答

1.1.什麽是表單

1.2.瀏覽器可以解析運行什麽語言

1.3.WebServer支持哪些動態語言

2.實踐總結與體會

3.實踐過程記錄

----3.1.Web前端:HTML基礎

1.使用指令apachectl start

打開Apache服務

2.使用netstat -tupln |grep 80指令查看80端口被哪些進程占用,如果有的話,用kill+進程ID殺死進程

3.cd ..之後vi /var/www/html/ test.thml在Apache工作目錄下建立一個含有表單的html文件

技術分享圖片

4.使用瀏覽器登錄localhost:80查看

技術分享圖片

----3.2.Web前端:javascipt基礎

1.使用JavaScript來編寫一個驗證用戶名、密碼的規則,重命名為test-1.html,其實主要是增加了一段javascript的代碼,如下:

<script language="javascript">  
    function
validateLogin(){ var sUserName = document.frmLogin.username.value ; var sPassword = document.frmLogin.password.value ; if ((sUserName =="") || (sUserName=="Your name")){ alert("Please enter the username!"); return false ; } if
((sPassword =="") || (sPassword=="Your password")){ alert("Please enter the password!"); return false ; } } </script>

2.重新登錄localhost:80之後不填寫用戶名,會有如下提示

技術分享圖片

----3.3.Web後端:MySQL基礎

0.kali目前使用的是MariaDB因為mysql有從開源變為閉源的趨勢,所以創建了MariaDB這個分支用來規避風險

1.使用/etc/init.d/mysql start開啟mysql服務,輸入mysql -u root -p,並根據提示輸入密碼,默認密碼為p@ssw0rd,進入mysql

技術分享圖片

2.輸入use mysql進入mysql數據庫,輸入update user set password=PASSWORD("******") where user=‘root‘;,修改密碼;輸入flush privileges;,更新權限

技術分享圖片

3.使用create database test_db;建立一個數據庫;使用show databases;查看存在的數據庫;使用use test_db;使用我們創建的數據庫

技術分享圖片

7.用create table test_table (username VARCHAR(20), password VARCHAR(20));建立數據表,show tables查看數據表

技術分享圖片

8.使用insert into 表名 values(‘zenglin‘,‘20154312‘);插入數據;使用select * from test_table查詢表中的數據

技術分享圖片

9.增加一個名為zenglin的新mysql用戶,使用grant select(insert,update,delete) on test_db.* to zenglin@localhost identified by "*******";指令進行

技術分享圖片

----3.4.Web後端:PHP基礎

1.vi /var/www/html test.php新建一個名為test的php文件,使用一些基礎的語法

技術分享圖片

2.在瀏覽器窗口使用localhost:80/test.php?a=/etc/passwd可以看到etc/passwd文件中的內容

技術分享圖片

3.使用老師ExpGuide中的代碼新建一個login_page.php,進行簡單的用戶認證

技術分享圖片

4.修改test-1.htmlformaction屬性改為login.php,實現跳轉到login.php,輸入localhost/test-1.html進行訪問

技術分享圖片

5.輸入zenglin以及20154312就能順利連接上去,並提示登錄成功

技術分享圖片

----3.5.SQL註入

1.在用戶名輸入框中輸入‘ or 1=1#,密碼隨意,這時SQL查詢語句變為select * from test_table where username=‘‘ or 1=1#‘ and password=‘‘#相當於註釋符,會把後面的內容註釋掉,or後跟著的1=1永遠為真,所以必然登錄成功

技術分享圖片

2.使用多條sql語句進行攻擊,將if ($result = $mysqli->query($query_str))中的query()改為multi_query,再在Username中輸入‘insert into test_table values(‘admin‘,‘123456‘);#,由於分隔符後的#把後面的內容註釋掉了,所以執行的其實是insert into lxmtable values(‘admin‘,‘123456‘);接著登錄就會出現如下頁面

技術分享圖片

----3.6XSS攻擊測試

20154312 曾林 Exp8 web基礎