[2,1]矛盾----------
is_numeric在php里面是 是數字的意思
這個啊,只要是不是純數字也可以, 試了一下num=1*1 只要是一個字符串就行....不管是算式也好,一串什么其他也好....
[2,2]web3----------
【F12是看網頁源代碼/審查元素(可以編輯)】
【Ctrl+u】直接強制查看源代碼
發現最后有蹊蹺 注釋掉的 這個常見的【】<!--KEY{J2sa42ahJK-HS11III}-->
這個是 unicode碼。。。。。
要轉換成人看得懂的ascii碼。。。。這文件說的沒錯。。。是你自己太小白了沒理解。。。。
站長工具 【編碼轉換】:http://tool.chinaz.com/Tools/unicode.aspx
也可以直接回車。。。?
[2,3]域名及解析----------
參考:http://www.cnblogs.com/lxz-1263030049/p/9298704.html
windows下修改的文件為:
這樣就可以了,我們直接訪問:http://flag.bugku.com/
就會得到答案
補課:
域名解析:
域名解析是將域名指向網站空間IP,讓人們通過注冊的域名可以方便地訪問到網站的一種服務。IP地址是網絡上標識站點的數字地址,為方便記憶,采用域名來代替IP地址標識站點地址。域名解析就是域名到IP地址的轉換過程。域名的解析工作由DNS服務器完成。
hosts文件:
Hosts是一個沒有擴展名的系統文件,可以用記事本等工具打開,其作用就是將一些常用的網址域名與其對應的IP地址建立一個關聯“數據庫”,當用戶在瀏覽器中輸入一個需要登錄的網址時,系統會首先自動從Hosts文件中尋找對應的IP地址,一旦找到,系統會立即打開對應網頁,如果沒有找到,則系統會再將網址提交DNS域名解析服務器進行IP地址的解析。
需要注意的是,Hosts文件配置的映射是靜態的,如果網絡上的計算機更改了請及時更新IP地址,否則將不能訪問。
---------------------補課來自 h0ryit 的CSDN 博客 ,全文地址請點擊:https://blog.csdn.net/w0ryitang/article/details/80112185?utm_source=copy
[2,4]你必須讓他停下
涉及到一個軟件 burpsuite 進行 抓包改包,查詢漏洞,暴力破解
配置瀏覽器代理?抓頁面? send To repeater?
然后再go 點幾下就有回應了
或者 直接禁用js 在谷歌瀏覽器的選項里面禁止所有頁面xx
路徑:【
設置---高級----內容設置
然而禁止了根本不行啊。。
--來源都是四處copy 並非原創 個人學習用
第三行開始
[本地包含]
include "flag.php";
$a = @$_REQUEST['hello'];
1._REQUEST[]函數: 它對get/Post都可以接受
flag在那個php文件中,但是讀不到,是本地的,要想辦法[爆破]
(1)可以用GET或POST方法為hello賦值進而為$a賦值
(2)程序並未對hello的輸入進行判斷過濾
(3)eval函數中執行的命令進而可以被$a的值所決定
2.var_dump()是PHP中的調試函數,可以用var_dump打印所有的對象,查看對象內部的數據結構
3.第二句話要獲得hello的值,由於hello為’hello’,所以無論在url欄中對hello賦任何值,都會全盤接受,其中var_dump()是將a打印到界面中,在根據eval函數的特性(計算后面括號中的表達式)
構造如下:http://120.24.86.145:8003/?hello=1);print_r(file("./flag.php"));%23
使原文語句為
eval(“var_dump(1);print_r(file(“./flag.php”))”)
4.(不懂誒..)這個%23是url編碼 # %23
之前有學過那個應該是?hello=1
但是后面咋又那個);是啥,....
print_r(file("flag.php"));%23 (最后加個#,完結有分號
5.還可以:?hello=file_get_contents('flag.php')
再f12 就可以
file_get_contents() 函數把整個文件讀入一個字符串中。
感覺只要 hello有了值,就可以繼續往后xxx,然后我們只需要把那個show的顯示出來,,調用一個函數
或者:http://120.24.86.145:8003/index.php?hello=1);show_source(%27flag.php%27);var_dump(3
eval() 存在注入漏洞 使用hello構造payload即可
[跳過](php臣妾實在是完全不懂啊...)
[web5]
這個查看源代碼,發現了jother編碼,直接放到瀏覽器(先f12)然后再console一下就好了... (console是控制台的意思)
對jother只是初步了解,它也是一種編碼方式,不過有點另類,其中的基礎不是0、1,而是特定的字符:“+”、“!”、“(”、“)”、“[”、“]”、“{”、“}",服務於javascript語言,編碼出精簡的匿名函數對與字符串如“ctf{whatfk}”字符串
[頭等艙]
什么也沒有...
html里也沒有
burpsuite抓包
【補充:抓包肯定是頭部!!要在burp里面好好找(問了zj)】
第四行
[網站被黑]
經常遇到,加了Index.php發現是php 用御劍跑一下...發現還有一個后台界面.....
pass 密碼不知道
直接burp爆破,simple 字典 passwords/
short words......
PS:webshell一般大多數人用的都是英文密碼或者簡單的弱密碼,一般的字典都可以破解開的。
(>>?????)
【這里重做的時候發現 simple words和那個passwords不一樣。。。。】
【要多試驗幾次。。。。 】
【這個也還真的是!!!!只有多試驗多試錯 看題解想出來的和自己 就知道的 還是不一樣鴨】
分享鏈接:
多得是,你不知道的事(不要看表面現象):https://www.jianshu.com/p/9d1df93b9b2e?utm_campaign=maleskine&utm_content=note&utm_medium=pc_all_hots&utm_source=recommendation
如何疊衣服:https://www.sohu.com/a/198526273_365401
[4,2]
[管理員系統]
【notice】F12按下查看元素 和直接顯示出來的源代碼不一樣。。。
F12之后發現了一小段源代碼 (base 64編碼)
唔... 這樣就像是 在解密游戲
只有密碼test123 用戶名admin(本地....)的時候改一個包
【burp使用】[星號]
只有在代理服務器里面把包改掉 改成本地截留
自己攔下來之后 .....send to repeater 改包把包改掉 然后繼續GO發出去
就可以發送修改過的包了 是不是很強
參考地址: https://blog.csdn.net/jinzhichaoshuiping/article/details/47324955
而且可以直接把網頁上搞過來的東西繼續改
簡稱XFF頭,它代表客戶端,也就是HTTP的請求端真實的IP
那么我們偽裝成本地登錄就可以了 把包的xff頭設置為本地 127.0.0.1
注意頭部這個東西是 X-Forwarded-For
【改完之后記得要把代理設置改回來!!!,,,】
(下面黑色為轉載)
dGVzdDEyMw== 很明顯是Base64編碼格式
X-Forwarded-For
X-Forwarded-For:簡稱XFF頭,它代表客戶端,也就是HTTP的請求端真實的IP,只有在通過了HTTP 代理或者負載均衡服務器時才會添加該項。它不是RFC中定義的標准請求頭信息,在squid緩存代理服務器開發文檔中可以找到該項的詳細介紹。
===================
網頁上都是明碼傳輸的
連人家的wifi 真的 就完全可以截留你輸入的xxx密碼
馬上就能二次支付.....
http: // https:// (s)就有了加密證書 沒錯的
老師: 你們交的這些作業都是小玩意兒 到企業里都沒用的
對你來說 你高層次的人要看到別人書本上學不到的東西 看到別人看不到的東西
優秀變成卓越需要付出代價和時間 要知識繼續來重塑自己
[4,3] web4
發現這個%什么的 是JavaScript里面一個函數 escape() 和unescape() 用於加密和解密....
站長工具在線解密就可以了...
http://tool.chinaz.com/Tools/escape.aspx
然后......
key一定是帶好了{}的格式吧.... !! 找到之后 提交到原來的網頁上去 submit 出來flag 再交回bugku里面去...
[5,1]輸入密碼查看flag
burp爆破... 現在開始熟練一些了..

發到Intruder里面就是爆破啦啦啦.. 而不像repeater里面要改掉包
然后發現不對.... 要選對weizhi , pwd 稍微手動設置一下就好了
然后再抓 length不同的意思就是返回的值不同因為密碼總不和以前的返回一樣了 所以拿個不一樣就又是密碼了...
選項里面


[5,2]
[點擊一百萬次]
還好吧 ... js學一點,然后火狐hackbar直接發送一個clicks=1000000.....
get改成post(?)
但是 直接在源代碼上面改了沒用
emmmm 改了之后 改成99999/100000 再點一下就沒了... 恢復到4/....
所以還是下面.............
當滿足條件后,會執行post clicks=1000000
所以我們直接用hackbar來post
這個js代碼不錯哦 聽炫酷的/// 一點擊就會變起來
var clicks=0 $(function() { $("#cookie") .mousedown(function() { $(this).width('350px').height('350px'); }) .mouseup(function() { $(this).width('375px').height('375px'); clicks++; $("#clickcount").text(clicks); if(clicks >= 10){ var form = $('<form action="" method="post">' + '<input type="text" name="clicks" value="' + clicks + '" hidden/>' + '</form>'); $('body').append(form); form.submit(); } }); });
[5,3]備份是個好習慣
[6,2] 速度要快
https://base64.supfree.net/ 隨便找了 一個加密解密的東西
/////.... 要腳本啊..... 算了算了...
[6,3]cookies欺騙
查看源代碼的時候上面的url竟然還有花招:

這個東西是base64 解密一下
隨便找個地方解密就行...發現是keys.txt
哇,..... 然后就轉換 最開始換成index.php的base64編碼 放到后面
源代碼有提示說line=xxx 開始判斷line=從1開始爬... (其實可以使用python好了這里略去)
接下來是看不懂的php代碼.....(補php T.T)
真是雞賊.....【中間會有空格】 每空一行 一行代碼
【所以 最好是爬下來 看地址 https://blog.csdn.net/qq_26090065/article/details/81588595 】
哇。。。。 還是要自己看php代碼最厲害 。。。 我搞了半天
具體步驟如下:
把源代碼網址里面的keys.txt改成keys.txt(趴下來的代碼里寫的)
然后hackbar發包改東西
然后查看源代碼就可以了......
注意留意網頁上的一些提示 比如這個頁面除了源代碼之外還有url
不行burp抓包里面也有很多東西的
稍微總結一下套路
【一般啊似乎可以是用burp 抓包 (本地)然后改包 改掉之后繼續xxx】這個相當於是火狐瀏覽器的hackbar(可以發post,可以改cookie)
最后寫成這個樣子。。改了半天
把url load進去 再點那個按鈕


[6.4]never give up
發現注釋掉的有一個1p.html 訪問
發現%,,的一堆先escape解碼 然后base64解碼
然后一堆看不懂的php代碼...但是吧 其實中間有個東西 f4l2a3g.txt 試驗一下果然可以誒....
然后就好了 難得-.-
================
該開新的帖子了...
【留意網頁上所有給的信息】 充分挖掘..... 充分挖掘..... 充分挖掘....
【多嘗試 多試驗 多test 】
[前女友]
這個也是充分挖掘吧 首先鏈接
然后php漏洞:
if($v1 != $v2 && md5($v1) == md5($v2)){
if(!strcmp($v3, $flag)){
兩個東西不相等 但是md5加密之后還相等
strcmp v3和flag相等才可以
這樣....emmm... 我們人工達到不了就漏洞:當他是數組的時候就崩了 返回0
那么就構造a[0]=... a[1]=... a[2]=... 就好了....
[【向zj好好學習!!!!發現問題的能力 解決的能力】
