由SQL注入(或數(shù)據(jù)庫權限)滲透WordPress站點的一些手法

最近居正通過SQL注入漏洞拿了某個WordPress(簡稱WP)站點,過程可謂是一波三折译株。滲透筆記過一段時間計劃公開到自己的博客上。在這次滲透中,居正對由數(shù)據(jù)庫權限進行滲透并提權到站點管理員權限有了更多的了解怪蔑,便在這篇文章中把自己的小經(jīng)驗分享出來。

天下沒有不透風的墻:SQL注入的形成

這次遇到的WP站點上存在一個站長自己開發(fā)的取得某列表的功能丧荐,不過沒有采用WP插件的方式來進行開發(fā)缆瓣。URL像是這樣:

https://www.example.com/somelist/get.php?id=1

稍微后面加個單引號就報錯。

假如采用了WP插件的形式實現(xiàn)此功能虹统,并且遵守插件開發(fā)規(guī)范弓坞,根本不會有這么無腦的注入漏洞。而這個功能车荔,或者說這個程序渡冻,是在站點下面直接新建了一個目錄,在里面放代碼忧便。程序本身和WP一點調用關系都沒有族吻,但卻和WP用的是同一個數(shù)據(jù)庫。

打個比方珠增,此程序就像是一個好端端的WP大樓上的違建超歌。違建就違建吧,還開了個天窗切平。我們直接跳傘就進到大樓內部了= =

下面居正就拋出自己摸索出來的“降龍十八掌”N沾 (x)

第一招:高權限SQLMAP寫后門

DBA(管理員)權限是可以直接用sqlmap寫入后門的。先檢測是否為DBA權限:

sqlmap.py -u 注入點 –is-dba

可見此站點有DBA權限悴品,可以直接寫后門:

sqlmap.py -u 注入點 –os-shell

但是居正到這一步發(fā)現(xiàn)雖然可以正確取得網(wǎng)站路徑禀综,但沒寫權限简烘。那么這招就不能用了。

第二招:有讀權限SQLMAP下載wp-config.php

有時候沒有寫權限但有讀取權限定枷,可以直接下載wp-config.php這個文件孤澎。它是WP用來存儲數(shù)據(jù)庫信息的文件,包括明文的賬號密碼欠窒,有了它覆旭,我們可以做這些事:

1.有phpmyadmin的話,直接通過此賬號登錄

2.利用密碼社工管理員進入儀表盤

3.利用密碼社工直接連SSH岖妄、3389等

但是有個條件型将,需要得知站點的絕對路徑——WP的站點很容易就可以爆出來。

命令類似這樣:

sqlmap.py -u 注入點 –file-read “/path/to/wordpress/wp-config.php”

然而居正發(fā)現(xiàn)連讀權限也沒有:

此招不行荐虐,咱們另尋門路七兜。

第三招:wp_options表暗藏乾坤

開發(fā)過WP插件的朋友都知道,wp_options是個很重要的表福扬,它存儲著WP程序及其插件的設置數(shù)據(jù)腕铸。

如果網(wǎng)站有啟用SMTP的話,則可以通過注入dump到郵件服務器的賬戶數(shù)據(jù)铛碑,再利用WP“忘記密碼/找回密碼”這個功能發(fā)送郵件重置管理員密碼狠裹,然后在已控制的郵件服務器里面可以看到這封郵件。

為什么不直接發(fā)送重置密碼郵件汽烦,然后在wp_users這個表里面找到重置密碼key涛菠,構造URL來欺騙呢?原來現(xiàn)在新版的WP將這個key做了非可逆加密撇吞,無法通過讀表的方式得到原始的key:

在wp_options里面找SMTP信息需要注意碗暗,有可能站點使用了第三方SMTP插件,然后導致站點沒使用WP自帶的SMTP梢夯,而是使用此插件。而郵箱賬戶信息后面更新過晴圾,只改了插件的設置颂砸,但WP自帶的設置里面就沒有及時更新了。簡言之死姚,表中會出現(xiàn)“真的”和“假的”兩種SMTP信息人乓,需要去仔細辨認。

類似的命令可以dump這張表:

sqlmap.py -u 注入點 -D 當前數(shù)據(jù)庫名 -T wp_options –dump

然后sqlmap會把表數(shù)據(jù)以csv的格式存到指定的目錄都毒,打開就可以瀏覽了色罚。

居正在這里面發(fā)現(xiàn)了相應的郵箱數(shù)據(jù),成功登錄账劲。接著就用發(fā)送重置密碼郵件的方式改了管理員的密碼戳护,成功getshell金抡。

getshell之后讀取wp-config.php的數(shù)據(jù)庫連接信息,通過phpmyadmin控制數(shù)據(jù)庫腌且。如果沒有的話就傳一個adminer上去梗肝。

提醒一下,先前可以dump表wp_users里面管理員賬戶加密的hash铺董,在getshell后把密碼給他改回去巫击,以清除滲透痕跡。

第四招:有數(shù)據(jù)庫讀寫權限的提權辦法

這個招數(shù)用于可以得到數(shù)據(jù)庫的讀寫權限提權的方法精续,如可以登錄phpmyadmin但是沒有getshell坝锰。

有兩種方法可以用:

1.注冊一個站點普通用戶,改用戶表重付,把自己提升為管理員顷级。

2.利用outfile之類的SQL語句直接getshell。

下面分別介紹

第一種

先注冊一個站點用戶堪夭,在數(shù)據(jù)庫里面找wp_users這個表愕把,取得自己的ID和隨便哪個管理員的ID:

我的ID是72,某管理員的ID是1森爽。

然后打開wp_usermeta這個表弟晚,通過ID找到管理員,復制他的wp_capabilities:

再通過ID找到自己的賬戶豆同,先復制自己現(xiàn)在的wp_capabilities保存好锋叨,然后改成管理員的的wp_capabilities。

之后登錄儀表盤付呕,會發(fā)現(xiàn)自己已經(jīng)是管理員權限了计福,可以getshell。

getshell完了之后記得把自己的wp_capabilities再改回原來的那個徽职,以清除痕跡象颖。

第二種

第二種方法不僅僅用于WP,而適用于所有可以操作數(shù)據(jù)庫的站點姆钉。

利用需要滿足以下條件:

1.DBA權限

2.有絕對路徑

3.沒有配置–secure-file-priv

在phpmyadmin執(zhí)行類似命令:

select ‘’ into outfile ‘/path/to/wordpress/shell.php’

來寫入一句話说订。

如果開啟了–secure-file-priv,就是禁止使用outfile潮瓶,還是可以通過寫logfile的方法繞過:

SET global general_log=’ON’

SET global general_log_file=’/path/to/wordpress/shell.php’;

select ‘’;

SET global general_log=’OFF’;

詳細了解這種姿勢:https://zhuanlan.zhihu.com/p/25957366

以上就是帶給大家由SQL注入(或數(shù)據(jù)庫權限)滲透WordPress站點的四大招陶冷,你都學會了嗎??


本文首發(fā)于淀粉月刊:https://dfkan.com

原作者:居正

發(fā)布時間:2018年5月11日

點此查看原文

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末毯辅,一起剝皮案震驚了整個濱河市埂伦,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌思恐,老刑警劉巖沾谜,帶你破解...
    沈念sama閱讀 221,820評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件膊毁,死亡現(xiàn)場離奇詭異,居然都是意外死亡类早,警方通過查閱死者的電腦和手機媚媒,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,648評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來涩僻,“玉大人缭召,你說我怎么就攤上這事∧嫒眨” “怎么了嵌巷?”我有些...
    開封第一講書人閱讀 168,324評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長室抽。 經(jīng)常有香客問我搪哪,道長,這世上最難降的妖魔是什么坪圾? 我笑而不...
    開封第一講書人閱讀 59,714評論 1 297
  • 正文 為了忘掉前任晓折,我火速辦了婚禮,結果婚禮上兽泄,老公的妹妹穿的比我還像新娘漓概。我一直安慰自己,他們只是感情好病梢,可當我...
    茶點故事閱讀 68,724評論 6 397
  • 文/花漫 我一把揭開白布胃珍。 她就那樣靜靜地躺著,像睡著了一般蜓陌。 火紅的嫁衣襯著肌膚如雪觅彰。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,328評論 1 310
  • 那天钮热,我揣著相機與錄音填抬,去河邊找鬼。 笑死隧期,一個胖子當著我的面吹牛痴奏,可吹牛的內容都是我干的。 我是一名探鬼主播厌秒,決...
    沈念sama閱讀 40,897評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼擅憔!你這毒婦竟也來了鸵闪?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 39,804評論 0 276
  • 序言:老撾萬榮一對情侶失蹤暑诸,失蹤者是張志新(化名)和其女友劉穎蚌讼,沒想到半個月后辟灰,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,345評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡篡石,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 38,431評論 3 340
  • 正文 我和宋清朗相戀三年芥喇,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片凰萨。...
    茶點故事閱讀 40,561評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡继控,死狀恐怖,靈堂內的尸體忽然破棺而出胖眷,到底是詐尸還是另有隱情武通,我是刑警寧澤,帶...
    沈念sama閱讀 36,238評論 5 350
  • 正文 年R本政府宣布珊搀,位于F島的核電站冶忱,受9級特大地震影響,放射性物質發(fā)生泄漏境析。R本人自食惡果不足惜囚枪,卻給世界環(huán)境...
    茶點故事閱讀 41,928評論 3 334
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望劳淆。 院中可真熱鬧链沼,春花似錦、人聲如沸憔儿。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,417評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽谒臼。三九已至朝刊,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間蜈缤,已是汗流浹背拾氓。 一陣腳步聲響...
    開封第一講書人閱讀 33,528評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留底哥,地道東北人咙鞍。 一個月前我還...
    沈念sama閱讀 48,983評論 3 376
  • 正文 我出身青樓,卻偏偏與公主長得像趾徽,于是被迫代替她去往敵國和親续滋。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,573評論 2 359

推薦閱讀更多精彩內容

  • http://192.168.136.131/sqlmap/mysql/get_int.php?id=1 當給sq...
    xuningbo閱讀 10,334評論 2 22
  • sqlmap用戶手冊 說明:本文為轉載孵奶,對原文中一些明顯的拼寫錯誤進行修正疲酌,并標注對自己有用的信息。 ======...
    wind_飄閱讀 2,056評論 0 5
  • 一套實用的滲透測試崗位面試題,你會嗎朗恳? 1.拿到一個待檢測的站湿颅,你覺得應該先做什么? 收集信息 whois粥诫、網(wǎng)站源...
    g0閱讀 4,843評論 0 9
  • sqlmap也是滲透中常用的一個注入工具油航,其實在注入工具方面,一個sqlmap就足夠用了怀浆,只要你用的熟谊囚,秒殺各種工...
    查無此人asdasd閱讀 1,552評論 0 1
  • sqlmap也是滲透中常用的一個注入工具,其實在注入工具方面揉稚,一個sqlmap就足夠用了秒啦,只要你用的熟,秒殺各種工...
    linkally閱讀 6,903評論 1 40