<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                ## 10.1 驅動通信 幾乎每個在 Windows 上注冊了的驅動程序都有一個設備名和一個符號鏈接。用戶模式 的程序能夠通過符號鏈接獲得驅動的句柄,然后使用這個句柄和驅動進行聯系。具體函數如 下: ``` HANDLE WINAPI CreateFileW( LPCTSTR lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttribute DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile ); ``` 第一個參數,填寫文件名或者設備名,這里填寫目標驅動的符號連接。 dwDesiredAccess 表示訪問方式,讀或者寫(可以既讀又寫,也可以不讀不寫),GENERIC_READ (0x80000000) 讀,GENERIC_WRITE (0x40000000)寫。dwShareMode 這里設置成 0,表示在 CreateFileW 返回并且安全關閉了句柄之后,才能訪問設備。 lpSecurityAttributes 設置成 NULL,表示使 用 默 認 的 安 全 描 述 符 , 并 且 不 能 被 子 進 程 繼 承 。 dwCreationDisposition 參 數 設 置 成 OPEN_EXISTING (0x3),表示如果設備存在就打開,其余情況返回錯誤。最后兩個參數簡 單的設置成 NULL。 當 CreateFileW 成功返回一個有效的句柄之后,我們就能使用 DeviceIoControl(由 kernel32.dll 導出)傳遞一個 IOCTL 給設備。 ``` BOOL WINAPI DeviceIoControl( HANDLE hDevice, DWORD dwIoControlCode, LPVOID lpInBuffer, DWORD nInBufferSize, LPVOID lpOutBuffer, DWORD nOutBufferSize, LPDWORD lpBytesReturned, LPOVERLAPPED lpOverlapped ); ``` 第 一個 參數 由 CreateFileW 返 回的 句柄 。 dwIoControlCode 是 要傳 遞給 設備 啟動 的 IOCTL 代碼。這個代碼決定了調用驅動中的什么功能。參數 lpInBuffer 指向一個緩沖區,包 含了將要傳遞給驅動的數據。這個緩沖區是我們后面要重點操作的地方,fuzz 數據將存在這。 nInBufferSize 為傳遞給驅動的緩沖區的大小。 lpOutBuffer 和 lpOutBufferSize,和前兩個參 數一樣,不過是用于接收驅動返回的數據。lpBytesReturned 為驅動實際返回的數據的長度。 最后一個參數簡單的設置成 NULL。 現在對于驅動的交互,大家應該不陌生了,接下來就祭出我們的 Immunity,用它 Hook 住 DeviceIoControl 然后變形輸入緩沖區內的數據,最后 fuzzing every driver。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看