重囗另类BBWSeⅹHD,av狼论坛,精品一卡2卡三卡4卡乱码理论,体育生gv老师浪小辉3p警察

修改Windows SMB相關服務的默認端口 -電腦資料

電腦資料 時間:2019-01-01 我要投稿
【www.ipr-jzsc.com - 電腦資料】

    Windows NT系列的NetBT(NetBios Over Tcpip)服務,是用來處理SMB(Server Message Block)相關的服務/客戶操作的,

修改Windows SMB相關服務的默認端口

。


    NetBT服務對應的驅動程序文件是netbt.sys,對應的注冊表項是:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT。
微軟的KB 120642和KB 314053分別描述了Windows NT、Windows 2000、Windows XP上該鍵值的部分可選參數。


    NetBT服務對應的在Windows NT 4.0上對應的端口是:


    NameservicePort 137/UDP

    DatagramPort 138/UDP

    SessionPort 139/TCP



    從Windows 2000開始,微軟引入了SMB Direct Over TCP的445端口。上述的137、138、139 端口雖然被保留,并可正常工作,但是默認情況下,系統總是會使用445端口進行SMB會話,僅在445端口工作失敗的情形下,才會使用139端口作為SessionPort。

    445端口默認情況下是始終開放的。如果要關閉該端口,可以參考微軟KB 301673中的方法,HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\NetBT\Parameters中增加一個值:


    Value Name: SmbDeviceEnabled

    Type: REG_DWORD


    Value Data: 0


    然后重新啟動系統。


    順便提一下,如果要關閉139端口,可以參考微軟的KB 299977:


    1、 單擊開始,指向設置,然后單擊網絡和撥號連接。

    2、 單擊您希望靜態配置的本地連接,單擊文件菜單中的屬性。

    3、 單擊 Internet 協議 (TCP/IP),單擊屬性,單擊高級,然后單擊 WINS 選項卡。

    4、 單擊禁用 TCP/IP 上的 NetBIOS。

    5、 單擊確定,單擊確定,再次單擊確定。


    修改會立即生效,不必重新啟動系統。


    這個445 端口可不可以改成別的值呢?分析netbt.sys可知,服務初始化的時候,函數NbtReadRegistry分別調用ReadParameters和ReadSmbDeviceInfo從注冊表中獲取

    NetBT服務的配置信息:



    ; ------------------------------------------------------------------------

    push [ebp+Handle]

    push offset _NbtConfig

    call _ReadParameters@8 ; ReadParameters(x,x)

    push [ebp+KeyHandle]

    call _ReadSmbDeviceInfo@4 ; ReadSmbDeviceInfo(x)

    ; ------------------------------------------------------------------------


    ReadParameters讀取的注冊表值就在上面提到的三篇KB中基本都有相關說明,但是ReadSmbDeviceInfo 所獲取的信息,似乎還沒有現成的文檔描述,

電腦資料

修改Windows SMB相關服務的默認端口》(http://www.ipr-jzsc.com)。下面是逆向工程出來的5.0.2195.6783版本netbt.sys的ReadSmbDeviceInfo函數:


    ; ------------------------------------------------------------------------

    ; __stdcall ReadSmbDeviceInfo(KeyHandle)


    KeyHandle = dword ptr 8


    push ebp

    mov ebp, esp

    lea eax, [ebp+KeyHandle]

    push esi

    push eax ; KeyHandle

    push offset aParametersSmb ; "Parameters\Smb"

    push [ebp+KeyHandle] ; int

    call _NbtOpenRegistry@12 ; NbtOpenRegistry(x,x,x)

    mov esi, eax

    test esi, esi

    jl short SetDefaultPort ;如果鍵不存在則轉向去設置默認值

    push 1

    push 1BDh ; 默認值445

    push offset aSessionport ; "SessionPort"

    push [ebp+KeyHandle]

    call _NbtReadSingleParameter@16 ; NbtReadSingleParameter(x,x,x,x)

    push 1

    push 1BDh ; 默認值445

    push offset aDatagramport ; "DatagramPort"

    mov word_2BA88, ax
最新文章
主站蜘蛛池模板: 长兴县| 永德县| 亳州市| 巩留县| 孝义市| 营口市| 伊春市| 平原县| 沭阳县| 汝阳县| 浦县| 余江县| 紫金县| 咸丰县| 五原县| 丹巴县| 泗水县| 孟津县| 南丰县| 当雄县| 洛南县| 社旗县| 县级市| 玉屏| 襄汾县| 东宁县| 疏勒县| 台南县| 开原市| 额济纳旗| 乌拉特中旗| 盐城市| 阿鲁科尔沁旗| 韩城市| 二手房| 宜州市| 玛多县| 房山区| 鸡泽县| 贵州省| 北票市|