• Stars
    star
    172
  • Rank 220,185 (Top 5 %)
  • Language
    C++
  • License
    Do What The F*ck ...
  • Created over 4 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

You have no Internet connection despite you can open this page. --Microsoft

NCSIOverride

âš  Note

NCSI has changed a lot since my last update and this hook no longer works with latest Windows releases, see details in #2 (comment) (in Chinese)

Now that NCSI just works on my machine(TM) so I have no plan to update it. Feel free to do it yourself.

Does Windows block some functionality and keep saying you have no Internet, while you are searching for this?

JUST SAY FUCK OFF TO THAT BULLSHIT INDICATOR. THIS SHOULD NOT BE THE VEDAS TO KEEP USER FROM USING ANY FEATURE.

THE INDICATOR DOESN’T TEST YOUR SERVICE AT ALL. INDICATOR SAYS OK DOESN’T MEAN USER CAN CONNECT TO YOUR SERVICE.

Notes

  • Npcap (bundled with Wireshark/Nmap) is known to break NCSI.
  • You can trigger a NCSI reprobe by disabling and enabling a random network adapter.

Installation

Download from Releases or GitHub Actions artifacts: build

  1. Copy NlaSvc2.dll into system32
  2. Import install.reg

Configuration

Configuartion is stored in HKLM\SYSTEM\CurrentControlSet\Services\NlaSvc\Parameters\Internet\NCSIOverride, see install.reg for example

NCSIOverride
| # set default override for all interfaces here
| DefaultOverrideV4 REG_DWORD
| DefaultOverrideV6 REG_DWORD
+-InterfaceOverride
| +-{INTERFACE-GUID}
|   | # set override for interface with specified GUID here
|   | # this takes higher precedence than DefaultOverride
|   | OverrideV4      REG_DWORD
|   \ OverrideV6      REG_DWORD
+-Offsets
  | # the function offset in ncsi.dll
  | # will stop working if the value is outdated
  \ NCSI_INTERFACE_ATTRIBUTES_SetCapability REG_QWORD

Values for DefaultOverrideV4, DefaultOverrideV6, OverrideV4, OverrideV6:

  • 0: None
  • 1: Local
  • 2: Internet
  • 3: Max

{INTERFACE-GUID} can be obtained by:

PS C:\> Get-NetAdapter | select Name, InterfaceGuid

Name       InterfaceGuid                         
----       -------------                         
Ethernet 2 {640470cf-5b79-4df2-b462-5648463881d9}
Wi-Fi      {4efa6faf-9a7c-47bc-8179-6dc85adc9a59}

With Debugging Tools for Windows installed, the function offset can be updated by running Update-Offset.ps1 as administrator, or manually obtained using WinDbg:

C:\Program Files (x86)\Windows Kits\10\Debuggers\x64>windbg rundll32.exe ncsi.dll,NcsiPerformReprobe
# in WinDbg command window
0:000> sxe ld:ncsi.dll
0:000> g
0:000> ? ncsi!NCSI_INTERFACE_ATTRIBUTES::SetCapability - ncsi
Evaluate expression: 107868 = 00000000`0001a55c

Building

You need MSVC or Clang with MSVC ABI to build this (thanks Detours).

Notes

  • Current implementation sets the override passively by changing parameter in function call. You need to trigger a reprobe to reflect changed override value.
  • This can’t override physically disconnected interface.

More Repositories

1

MHC2

information about next generation color management in Windows
C#
97
star
2

WSLAttachSwitch

Attach the WSL2 virtual machine to a Hyper-V virtual switch.
C#
36
star
3

AMDColorTweaks

Calibrate monitors to sRGB or other color spaces on AMD GPUs, based on raw data or ICC profiles
C#
27
star
4

AudioToolboxWrapper

enables FFmpeg to use AudioToolbox codecs on Windows
C
17
star
5

drcom-client

DrCOM network access control client in PHP (Dr.COM variant)
PHP
15
star
6

tdlib-netcore

Fast TDLib binding for .NET Core and .NET Standard.
C#
15
star
7

PseudoDCDimming

Java
14
star
8

DllInjectLoader

Universal DLL injecting loader based on Detours
C++
11
star
9

FlvPatcher

Shell scripts to generate specially patched FLV files to avoid being encoded again by some online video sites.
Shell
9
star
10

xcursor2wincur

converts Xcursor files to Windows cursor files
Ruby
9
star
11

OpenLenovoSettings

A lightweight alternative to some snake oil upselling bloatware
C#
8
star
12

YASS

OBSOLETED REPOSITORY
C#
6
star
13

biliupload

bilibili uploader
Python
6
star
14

pcrinventory

公主连结 Re:Dive 全自动仓库识别工具
Python
5
star
15

BrokenSandbox

Java
5
star
16

LenovoCustomLogo

Customize Lenovo PC boot logo (screen) without bloatware
C#
5
star
17

desparse

yet another useless program
C
3
star
18

airibot

an IRC bot
Ruby
3
star
19

tesseract-mini-build

minimal tesseract build for bundle with other applications
Batchfile
2
star
20

7-zip

7-zip with another less cursed build system
C++
2
star
21

wcgtest

Test for wide color gamut support
Java
2
star
22

libavbuggyduration

Generate buggy media files to bypass re-encoding (for some online video sites only)
C
2
star
23

html5video

develop in gh-pages branch
JavaScript
1
star
24

ImpactorAutoFill

automagically fill username and password in Cydia Impactor
C
1
star
25

ort-python-builds

unofficial onnxruntime builds for extra Python versions
Shell
1
star
26

pybway

a Python implementation of Cubway
Python
1
star
27

FuckBingSearch

remove annoying "Bing search" text action from Outlook Android app
Java
1
star
28

pdx234-resolution-unlock

Java
1
star