aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorkevin <robertsonk@gmail.com>2024-08-05 21:45:24 -0400
committerkevin <robertsonk@gmail.com>2024-08-05 21:45:24 -0400
commitca0f1c658f07ae517797d99af2f2da47e27b854c (patch)
tree4311118f598850e69b29fd2a52d5968a2304e6fb
parent6b871443bca4c9dbeb353db94cf1cb28b6e57b80 (diff)
downloadInveigh-master.tar.gz
Inveigh-master.zip
.NET 8 and NTLM parsing fixesv2.0.11master
Replaced .NET 7 with 8. NTLM parsing fixes.
-rw-r--r--.github/workflows/dev.yml20
-rw-r--r--.github/workflows/release.yml20
-rw-r--r--Inveigh/Inveigh.csproj20
-rw-r--r--Inveigh/Listeners/SMBListener.cs2
-rw-r--r--Inveigh/Program.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/LICENSE2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Clients/SMBClient.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Clients/TCPClient.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Listeners/DHCPv6Listener.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Listeners/DNSListener.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Listeners/HTTPListener.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Listeners/LDAPListener.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Listeners/LLMNRListener.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Listeners/MDNSListener.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Listeners/NetBIOSNSListener.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Listeners/SMBListener.cs11
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Listeners/TCPListener.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Listeners/UDPListener.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/DHCPv6Checker.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/DHCPv6Message.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/DHCPv6Packet.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option1.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option14.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option16.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option2.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option23.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option24.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option3.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option39.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option6.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option8.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/DNS/DNSChecker.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/DNS/DNSHeader.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/DNS/DNSPacket.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/DNS/DNSQuestion.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/DNS/DNSResource.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/GSSAPI/GSSAPIInitSecContext.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/HTTP/HTTPRequest.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/HTTP/HTTPResponse.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/ICMPv6/ICMPv6RouterAdvertisement.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/ICMPv6/Options/ICMPv6RecursiveDNS.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/IP/IPHeader.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/LDAP/LDAPMessage.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/LDAP/Values/LDAPResult.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/LDAP/Values/LDAPSaslCredentials.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/LDAP/Values/LDAPSupportedCapabilities.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/LDAP/Values/LDAPSupportedSASLMechanisms.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/LLMNR/LLMNRChecker.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/LLMNR/LLMNRHeader.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/LLMNR/LLMNRPacket.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/LLMNR/LLMNRQuestion.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/LLMNR/LLMNRResource.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/MDNS/MDNSChecker.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/MDNS/MDNSHeader.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/MDNS/MDNSPacket.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/MDNS/MDNSQuestion.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/MDNS/MDNSResource.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/NTLMChallenge.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/NTLMHelper.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/NTLMNegotiate.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/NTLMResponse.cs98
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/Structures/NTLMAVPair.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/Structures/NTLMv1Response.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/Structures/NTLMv2ClientChallenge.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/Structures/NTLMv2Response.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/NetBIOS/NetBIOSNSChecker.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/NetBIOS/NetBIOSNSHeader.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/NetBIOS/NetBIOSNSPacket.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/NetBIOS/NetBIOSNSQuestion.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/NetBIOS/NetBIOSNSResource.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/NetBIOS/NetBIOSSessionService.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/PacketReader.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/PacketWriter.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB/Commands/SMBCOMNegotiateRequest.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB/Commands/SMBCOMSessionSetupAndXRequest.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB/Commands/SMBCOMSessionSetupAndXResponse.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB/SMBHeader.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB/SMBHelper.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2CloseRequest.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2CloseResponse.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2CreateRequest.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2ErrorResponse.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2FlushRequest.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2FlushResponse.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2LogoffRequest.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2LogoffResponse.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2NegotiateRequest.cs (renamed from Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2NegotiatelRequest.cs)2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2NegotiateResponse.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2QueryDirectoryRequest.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2QueryDirectoryResponse.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2ReadRequest.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2ReadResponse.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2SessionSetupRequest.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2SessionSetupResponse.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2TreeConnectRequest.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2TreeConnectResponse.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2TreeDisconnectRequest.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2TreeDisconnectResponse.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2WriteRequest.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2WriteResponse.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/SMB2Header.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/SMB2Helper.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/SMB2Packet.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Structures/SMB2NegotiateContext.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SPNEGO/SPNEGONegTokenInit.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/SPNEGO/SPNEGONegTokenResp.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/TCP/TCPHeader.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Protocols/UDP/UDPHeader.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Quiddity.csproj9
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Support/ASN1.cs2
-rw-r--r--Inveigh/Protocols/Quiddity/Quiddity/Support/Utilities.cs2
-rw-r--r--Inveigh/Sniffer/Sniffer.cs19
-rw-r--r--LICENSE2
-rw-r--r--README.md14
114 files changed, 257 insertions, 166 deletions
diff --git a/.github/workflows/dev.yml b/.github/workflows/dev.yml
index 6ad0b21..f11c9d6 100644
--- a/.github/workflows/dev.yml
+++ b/.github/workflows/dev.yml
@@ -20,7 +20,7 @@ jobs:
- name: Setup .NET Core SDK
uses: actions/setup-dotnet@v3
with:
- dotnet-version: 7.0.x
+ dotnet-version: 8.0.x
- name: Restore Dependencies
run: dotnet restore
@@ -34,29 +34,29 @@ jobs:
run: |
7z a -tzip -mx9 Inveigh-net3.5-dev.zip $PWD/Inveigh/bin/debug/net35/*
7z a -tzip -mx9 Inveigh-net4.6.2-dev.zip $PWD/Inveigh/bin/debug/net462/*
- 7z a -tzip -mx9 Inveigh-net7.0-dev.zip $PWD/Inveigh/bin/debug/net7.0/* -x!*/
+ 7z a -tzip -mx9 Inveigh-net8.0-dev.zip $PWD/Inveigh/bin/debug/net8.0/* -x!*/
- name: Publish - Trimmed/Single File
run: |
VERSION=${{ github.ref_name }}
- dotnet publish --self-contained=true -p:PublishSingleFile=true -p:PublishTrimmed=true -r linux-x64 -f net7.0 -p:AssemblyName=inveigh -c debug
- dotnet publish --self-contained=true -p:PublishSingleFile=true -p:PublishTrimmed=true -r osx-x64 -f net7.0 -p:AssemblyName=inveigh -c debug
- dotnet publish --self-contained=true -p:PublishSingleFile=true -p:PublishTrimmed=true -r win-x64 -f net7.0 -c debug
+ dotnet publish -r linux-x64 -f net8.0 -p:PublishOption=TrimmedSingle -p:AssemblyName=inveigh -c debug
+ dotnet publish -r osx-x64 -f net8.0 -p:PublishOption=TrimmedSingle -p:AssemblyName=inveigh -c debug
+ dotnet publish -r win-x64 -f net8.0 -p:PublishOption=TrimmedSingle -c debug
- name: Zip - Publish
run: |
- tar -czvf Inveigh-net7.0-linux-x64-trimmed-single-dev.tar.gz --directory=$PWD/Inveigh/bin/debug/net7.0/linux-x64/publish/ .
- tar -czvf Inveigh-net7.0-osx-x64-trimmed-single-dev.tar.gz --directory=$PWD/Inveigh/bin/debug/net7.0/osx-x64/publish/ .
- 7z a -tzip -mx9 Inveigh-net7.0-win-x64-trimmed-single-dev.zip $PWD/Inveigh/bin/debug/net7.0/win-x64/publish/*
+ tar -czvf Inveigh-net8.0-linux-x64-trimmed-single-dev.tar.gz --directory=$PWD/Inveigh/bin/debug/net8.0/linux-x64/publish/ .
+ tar -czvf Inveigh-net8.0-osx-x64-trimmed-single-dev.tar.gz --directory=$PWD/Inveigh/bin/debug/net8.0/osx-x64/publish/ .
+ 7z a -tzip -mx9 Inveigh-net8.0-win-x64-trimmed-single-dev.zip $PWD/Inveigh/bin/debug/net8.0/win-x64/publish/*
- name: Publish - NativeAOT
run: |
VERSION=${{ github.ref_name }}
- dotnet publish -p:Version=${VERSION:1} -r win-x64 -f net7.0 -p:PublishAot=true -c debug
+ dotnet publish -p:Version=${VERSION:1} -r win-x64 -f net8.0 -p:PublishOption=NativeAOT -c debug
- name: Zip - Publish - NativeAOT
run: |
- 7z a -tzip -mx9 Inveigh-net7.0-win-x64-nativeaot-${{ github.ref_name }}.zip $PWD/Inveigh/bin/debug/net7.0/win-x64/native/*
+ 7z a -tzip -mx9 Inveigh-net8.0-win-x64-nativeaot-${{ github.ref_name }}.zip $PWD/Inveigh/bin/debug/net8.0/win-x64/native/*
- name: Release .zip
if: "! startsWith(github.event_name, 'pull_request')"
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index 55fef8d..c0cd260 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -19,7 +19,7 @@ jobs:
- name: Setup .NET Core SDK
uses: actions/setup-dotnet@v3
with:
- dotnet-version: 7.0.x
+ dotnet-version: 8.0.x
- name: Restore Dependencies
run: dotnet restore
@@ -33,29 +33,29 @@ jobs:
run: |
7z a -tzip -mx9 Inveigh-net3.5-${{ github.ref_name }}.zip $PWD/Inveigh/bin/release/net35/*
7z a -tzip -mx9 Inveigh-net4.6.2-${{ github.ref_name }}.zip $PWD/Inveigh/bin/release/net462/*
- 7z a -tzip -mx9 Inveigh-net7.0-${{ github.ref_name }}.zip $PWD/Inveigh/bin/release/net7.0/* -x!*/
+ 7z a -tzip -mx9 Inveigh-net8.0-${{ github.ref_name }}.zip $PWD/Inveigh/bin/release/net8.0/* -x!*/
- name: Publish - Trimmed/Single File
run: |
VERSION=${{ github.ref_name }}
- dotnet publish --self-contained=true -p:PublishSingleFile=true -p:PublishTrimmed=true -p:Version=${VERSION:1} -r linux-x64 -f net7.0 -p:AssemblyName=inveigh -c release
- dotnet publish --self-contained=true -p:PublishSingleFile=true -p:PublishTrimmed=true -p:Version=${VERSION:1} -r osx-x64 -f net7.0 -p:AssemblyName=inveigh -c release
- dotnet publish --self-contained=true -p:PublishSingleFile=true -p:PublishTrimmed=true -p:Version=${VERSION:1} -r win-x64 -f net7.0 -c release
+ dotnet publish -p:Version=${VERSION:1} -r linux-x64 -f net8.0 -p:PublishOption=TrimmedSingle -p:AssemblyName=inveigh -c release
+ dotnet publish -p:Version=${VERSION:1} -r osx-x64 -f net8.0 -p:PublishOption=TrimmedSingle -p:AssemblyName=inveigh -c release
+ dotnet publish -p:Version=${VERSION:1} -r win-x64 -f net8.0 -p:PublishOption=TrimmedSingle -c release
- name: Zip - Publish
run: |
- tar -czvf Inveigh-net7.0-linux-x64-trimmed-single-${{ github.ref_name }}.tar.gz --directory=$PWD/Inveigh/bin/release/net7.0/linux-x64/publish/ .
- tar -czvf Inveigh-net7.0-osx-x64-trimmed-single-${{ github.ref_name }}.tar.gz --directory=$PWD/Inveigh/bin/release/net7.0/osx-x64/publish/ .
- 7z a -tzip -mx9 Inveigh-net7.0-win-x64-trimmed-single-${{ github.ref_name }}.zip $PWD/Inveigh/bin/release/net7.0/win-x64/publish/*
+ tar -czvf Inveigh-net8.0-linux-x64-trimmed-single-${{ github.ref_name }}.tar.gz --directory=$PWD/Inveigh/bin/release/net8.0/linux-x64/publish/ .
+ tar -czvf Inveigh-net8.0-osx-x64-trimmed-single-${{ github.ref_name }}.tar.gz --directory=$PWD/Inveigh/bin/release/net8.0/osx-x64/publish/ .
+ 7z a -tzip -mx9 Inveigh-net8.0-win-x64-trimmed-single-${{ github.ref_name }}.zip $PWD/Inveigh/bin/release/net8.0/win-x64/publish/*
- name: Publish - NativeAOT
run: |
VERSION=${{ github.ref_name }}
- dotnet publish -p:Version=${VERSION:1} -r win-x64 -f net7.0 -p:PublishAot=true -c release
+ dotnet publish -p:Version=${VERSION:1} -r win-x64 -f net8.0 -p:PublishOption=NativeAOT -c release
- name: Zip - Publish - NativeAOT
run: |
- 7z a -tzip -mx9 Inveigh-net7.0-win-x64-nativeaot-${{ github.ref_name }}.zip $PWD/Inveigh/bin/release/net7.0/win-x64/native/Inveigh.exe
+ 7z a -tzip -mx9 Inveigh-net8.0-win-x64-nativeaot-${{ github.ref_name }}.zip $PWD/Inveigh/bin/release/net8.0/win-x64/native/Inveigh.exe
- name: Release .zip
uses: softprops/action-gh-release@v1
diff --git a/Inveigh/Inveigh.csproj b/Inveigh/Inveigh.csproj
index 66da355..0d90a01 100644
--- a/Inveigh/Inveigh.csproj
+++ b/Inveigh/Inveigh.csproj
@@ -2,7 +2,7 @@
<PropertyGroup>
<OutputType>Exe</OutputType>
- <TargetFrameworks>net35;net462;net7.0</TargetFrameworks>
+ <TargetFrameworks>net35;net462;net8.0</TargetFrameworks>
<PlatformTarget>AnyCPU</PlatformTarget>
<DisableFody Condition="'$(PublishAot)' == 'true' Or '$(PublishTrimmed)' == 'true'">true</DisableFody>
<IncludeNativeLibrariesForSelfExtract>true</IncludeNativeLibrariesForSelfExtract>
@@ -12,6 +12,12 @@
<DebugType>pdbonly</DebugType>
<DebugSymbols>true</DebugSymbols>
</PropertyGroup>
+
+ <PropertyGroup Condition="$([MSBuild]::IsTargetFrameworkCompatible('$(TargetFramework)', 'net8.0'))">
+ <PublishTrimmed Condition="'$(PublishOption)' == 'TrimmedSingle'">true</PublishTrimmed>
+ <PublishSingleFile Condition="'$(PublishOption)' == 'TrimmedSingle'">true</PublishSingleFile>
+ <PublishAot Condition="'$(PublishOption)' == 'NativeAOT'">true</PublishAot>
+ </PropertyGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'net35'">
<Reference Include="System.DirectoryServices.Protocols">
@@ -22,13 +28,13 @@
<ItemGroup Condition="'$(TargetFramework)' == 'net462'">
<PackageReference Include="System.DirectoryServices.Protocols">
- <Version>7.0.0</Version>
+ <Version>8.0.0</Version>
</PackageReference>
</ItemGroup>
- <ItemGroup Condition="'$(TargetFramework)' == 'net7.0'">
+ <ItemGroup Condition="'$(TargetFramework)' == 'net8.0'">
<PackageReference Include="System.DirectoryServices.Protocols">
- <Version>7.0.0</Version>
+ <Version>8.0.0</Version>
</PackageReference>
</ItemGroup>
@@ -36,16 +42,16 @@
<PackageReference Include="Costura.Fody" Version="5.7.0">
<PrivateAssets>all</PrivateAssets>
</PackageReference>
- <PackageReference Include="Fody" Version="6.6.4">
+ <PackageReference Include="Fody" Version="6.8.1">
<PrivateAssets>all</PrivateAssets>
</PackageReference>
</ItemGroup>
- <ItemGroup Condition="'$(TargetFramework)' == 'net7.0'">
+ <ItemGroup Condition="'$(TargetFramework)' == 'net8.0'">
<PackageReference Include="Costura.Fody" Version="5.7.0">
<PrivateAssets>all</PrivateAssets>
</PackageReference>
- <PackageReference Include="Fody" Version="6.6.4">
+ <PackageReference Include="Fody" Version="6.8.1">
<PrivateAssets>all</PrivateAssets>
</PackageReference>
</ItemGroup>
diff --git a/Inveigh/Listeners/SMBListener.cs b/Inveigh/Listeners/SMBListener.cs
index 263229c..5804fe7 100644
--- a/Inveigh/Listeners/SMBListener.cs
+++ b/Inveigh/Listeners/SMBListener.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Program.cs b/Inveigh/Program.cs
index c5547aa..cff803d 100644
--- a/Inveigh/Program.cs
+++ b/Inveigh/Program.cs
@@ -174,7 +174,7 @@ namespace Inveigh
public static string netbiosDomain = Environment.UserDomainName;
public static string dnsDomain = "";
public static ulong smb2Session = 5548434740922023936; // todo check
- public static string version = "2.0.10";
+ public static string version = "2.0.11";
static void Main(string[] arguments)
{
diff --git a/Inveigh/Protocols/Quiddity/LICENSE b/Inveigh/Protocols/Quiddity/LICENSE
index 651f1af..9d15eea 100644
--- a/Inveigh/Protocols/Quiddity/LICENSE
+++ b/Inveigh/Protocols/Quiddity/LICENSE
@@ -1,6 +1,6 @@
BSD 3-Clause License
-Copyright (c) 2022, Kevin Robertson
+Copyright (c) 2024, Kevin Robertson
All rights reserved.
Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Clients/SMBClient.cs b/Inveigh/Protocols/Quiddity/Quiddity/Clients/SMBClient.cs
index 27b5493..2fa6b3e 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Clients/SMBClient.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Clients/SMBClient.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Clients/TCPClient.cs b/Inveigh/Protocols/Quiddity/Quiddity/Clients/TCPClient.cs
index 895f0dc..a5c730c 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Clients/TCPClient.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Clients/TCPClient.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Listeners/DHCPv6Listener.cs b/Inveigh/Protocols/Quiddity/Quiddity/Listeners/DHCPv6Listener.cs
index 3da6ec6..780ba3b 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Listeners/DHCPv6Listener.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Listeners/DHCPv6Listener.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Listeners/DNSListener.cs b/Inveigh/Protocols/Quiddity/Quiddity/Listeners/DNSListener.cs
index b2542f4..0a6db16 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Listeners/DNSListener.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Listeners/DNSListener.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Listeners/HTTPListener.cs b/Inveigh/Protocols/Quiddity/Quiddity/Listeners/HTTPListener.cs
index 673cbe1..a6da886 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Listeners/HTTPListener.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Listeners/HTTPListener.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Listeners/LDAPListener.cs b/Inveigh/Protocols/Quiddity/Quiddity/Listeners/LDAPListener.cs
index 92ce66a..fca71f8 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Listeners/LDAPListener.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Listeners/LDAPListener.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Listeners/LLMNRListener.cs b/Inveigh/Protocols/Quiddity/Quiddity/Listeners/LLMNRListener.cs
index d490197..6b03771 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Listeners/LLMNRListener.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Listeners/LLMNRListener.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Listeners/MDNSListener.cs b/Inveigh/Protocols/Quiddity/Quiddity/Listeners/MDNSListener.cs
index 6e5832f..5d1e8a3 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Listeners/MDNSListener.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Listeners/MDNSListener.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Listeners/NetBIOSNSListener.cs b/Inveigh/Protocols/Quiddity/Quiddity/Listeners/NetBIOSNSListener.cs
index 4693dc5..bcb6e5b 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Listeners/NetBIOSNSListener.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Listeners/NetBIOSNSListener.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Listeners/SMBListener.cs b/Inveigh/Protocols/Quiddity/Quiddity/Listeners/SMBListener.cs
index 3f93d71..6dd10f5 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Listeners/SMBListener.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Listeners/SMBListener.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -38,6 +38,7 @@ using Quiddity.NetBIOS;
using Quiddity.NTLM;
using Quiddity.SMB;
using Quiddity.SMB2;
+using Quiddity.Support;
namespace Quiddity
{
@@ -243,7 +244,13 @@ namespace Quiddity
string user = Encoding.Unicode.GetString(ntlmResponse.UserName);
string host = Encoding.Unicode.GetString(ntlmResponse.Workstation);
string response = BitConverter.ToString(ntlmResponse.NtChallengeResponse).Replace("-", "");
- string lmResponse = BitConverter.ToString(ntlmResponse.LmChallengeResponse).Replace("-", "");
+ string lmResponse = "";
+
+ if (!Utilities.ArrayIsNullOrEmpty(ntlmResponse.UserName))
+ {
+ lmResponse = BitConverter.ToString(ntlmResponse.LmChallengeResponse).Replace("-", "");
+ }
+
OutputNTLM("SMB", listenerPort, clientIP, clientPort, user, domain, host, challenge, response, lmResponse);
SMB2Header responseSMB2Header = new SMB2Header();
SMB2SessionSetupResponse smb2SessionSetupResponse = new SMB2SessionSetupResponse();
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Listeners/TCPListener.cs b/Inveigh/Protocols/Quiddity/Quiddity/Listeners/TCPListener.cs
index 102f773..17f5c36 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Listeners/TCPListener.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Listeners/TCPListener.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Listeners/UDPListener.cs b/Inveigh/Protocols/Quiddity/Quiddity/Listeners/UDPListener.cs
index 70cd01f..c884344 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Listeners/UDPListener.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Listeners/UDPListener.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/DHCPv6Checker.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/DHCPv6Checker.cs
index faec0fd..a74be57 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/DHCPv6Checker.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/DHCPv6Checker.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/DHCPv6Message.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/DHCPv6Message.cs
index d18df87..0366b39 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/DHCPv6Message.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/DHCPv6Message.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/DHCPv6Packet.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/DHCPv6Packet.cs
index ca81e13..ea9103b 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/DHCPv6Packet.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/DHCPv6Packet.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option1.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option1.cs
index a67f759..c3e7d88 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option1.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option1.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option14.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option14.cs
index c098446..5459f3b 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option14.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option14.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option16.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option16.cs
index 7dd96fb..5dc00e5 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option16.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option16.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option2.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option2.cs
index 08adf57..1d66b87 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option2.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option2.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option23.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option23.cs
index 7a47786..919e79e 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option23.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option23.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option24.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option24.cs
index ca197a7..489e3ca 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option24.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option24.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option3.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option3.cs
index 1727525..90b6fcb 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option3.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option3.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option39.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option39.cs
index 2cf7928..b4e32f4 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option39.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option39.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option6.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option6.cs
index d9dc4b6..e5e5aad 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option6.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option6.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option8.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option8.cs
index 05929d9..f2b7055 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option8.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DHCPv6/Options/DHCPv6Option8.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DNS/DNSChecker.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DNS/DNSChecker.cs
index 5ffd513..63e4c9f 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DNS/DNSChecker.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DNS/DNSChecker.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DNS/DNSHeader.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DNS/DNSHeader.cs
index bd68c81..5390854 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DNS/DNSHeader.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DNS/DNSHeader.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DNS/DNSPacket.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DNS/DNSPacket.cs
index 74238d9..114b8ab 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DNS/DNSPacket.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DNS/DNSPacket.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DNS/DNSQuestion.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DNS/DNSQuestion.cs
index aa91f4a..3e88f44 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DNS/DNSQuestion.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DNS/DNSQuestion.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DNS/DNSResource.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DNS/DNSResource.cs
index f6ad4f6..87390e3 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DNS/DNSResource.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/DNS/DNSResource.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/GSSAPI/GSSAPIInitSecContext.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/GSSAPI/GSSAPIInitSecContext.cs
index 82b443e..63e2853 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/GSSAPI/GSSAPIInitSecContext.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/GSSAPI/GSSAPIInitSecContext.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/HTTP/HTTPRequest.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/HTTP/HTTPRequest.cs
index 70fac9e..3c952c0 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/HTTP/HTTPRequest.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/HTTP/HTTPRequest.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/HTTP/HTTPResponse.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/HTTP/HTTPResponse.cs
index b5d2898..f75e52a 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/HTTP/HTTPResponse.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/HTTP/HTTPResponse.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/ICMPv6/ICMPv6RouterAdvertisement.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/ICMPv6/ICMPv6RouterAdvertisement.cs
index c0129bf..1d0aef3 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/ICMPv6/ICMPv6RouterAdvertisement.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/ICMPv6/ICMPv6RouterAdvertisement.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/ICMPv6/Options/ICMPv6RecursiveDNS.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/ICMPv6/Options/ICMPv6RecursiveDNS.cs
index 42f3431..3b89117 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/ICMPv6/Options/ICMPv6RecursiveDNS.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/ICMPv6/Options/ICMPv6RecursiveDNS.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/IP/IPHeader.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/IP/IPHeader.cs
index 9167c5f..5895212 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/IP/IPHeader.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/IP/IPHeader.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LDAP/LDAPMessage.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LDAP/LDAPMessage.cs
index 5fe7613..85a172b 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LDAP/LDAPMessage.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LDAP/LDAPMessage.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LDAP/Values/LDAPResult.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LDAP/Values/LDAPResult.cs
index 7f53dc2..986fe7b 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LDAP/Values/LDAPResult.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LDAP/Values/LDAPResult.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LDAP/Values/LDAPSaslCredentials.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LDAP/Values/LDAPSaslCredentials.cs
index d6d11a7..c540afc 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LDAP/Values/LDAPSaslCredentials.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LDAP/Values/LDAPSaslCredentials.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LDAP/Values/LDAPSupportedCapabilities.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LDAP/Values/LDAPSupportedCapabilities.cs
index dd172c6..1acc031 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LDAP/Values/LDAPSupportedCapabilities.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LDAP/Values/LDAPSupportedCapabilities.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LDAP/Values/LDAPSupportedSASLMechanisms.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LDAP/Values/LDAPSupportedSASLMechanisms.cs
index d0ef4b8..1805429 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LDAP/Values/LDAPSupportedSASLMechanisms.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LDAP/Values/LDAPSupportedSASLMechanisms.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LLMNR/LLMNRChecker.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LLMNR/LLMNRChecker.cs
index ec071be..70cdebd 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LLMNR/LLMNRChecker.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LLMNR/LLMNRChecker.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LLMNR/LLMNRHeader.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LLMNR/LLMNRHeader.cs
index a64bb05..a641a79 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LLMNR/LLMNRHeader.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LLMNR/LLMNRHeader.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LLMNR/LLMNRPacket.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LLMNR/LLMNRPacket.cs
index c103c21..11511c7 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LLMNR/LLMNRPacket.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LLMNR/LLMNRPacket.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LLMNR/LLMNRQuestion.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LLMNR/LLMNRQuestion.cs
index b919cd5..9b9fb79 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LLMNR/LLMNRQuestion.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LLMNR/LLMNRQuestion.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LLMNR/LLMNRResource.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LLMNR/LLMNRResource.cs
index be4f768..ca50af5 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LLMNR/LLMNRResource.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/LLMNR/LLMNRResource.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/MDNS/MDNSChecker.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/MDNS/MDNSChecker.cs
index 14f24da..00da338 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/MDNS/MDNSChecker.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/MDNS/MDNSChecker.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/MDNS/MDNSHeader.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/MDNS/MDNSHeader.cs
index 3d86d5a..00c65f1 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/MDNS/MDNSHeader.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/MDNS/MDNSHeader.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/MDNS/MDNSPacket.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/MDNS/MDNSPacket.cs
index a7a8543..01a34c5 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/MDNS/MDNSPacket.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/MDNS/MDNSPacket.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/MDNS/MDNSQuestion.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/MDNS/MDNSQuestion.cs
index 34bee2b..cdf66fd 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/MDNS/MDNSQuestion.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/MDNS/MDNSQuestion.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/MDNS/MDNSResource.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/MDNS/MDNSResource.cs
index c95d013..8efba24 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/MDNS/MDNSResource.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/MDNS/MDNSResource.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/NTLMChallenge.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/NTLMChallenge.cs
index 4f91c24..d613200 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/NTLMChallenge.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/NTLMChallenge.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/NTLMHelper.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/NTLMHelper.cs
index 463eca5..ad0bf64 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/NTLMHelper.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/NTLMHelper.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/NTLMNegotiate.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/NTLMNegotiate.cs
index df315d9..13fee4c 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/NTLMNegotiate.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/NTLMNegotiate.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/NTLMResponse.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/NTLMResponse.cs
index a511ea1..797e923 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/NTLMResponse.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/NTLMResponse.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -110,14 +110,16 @@ namespace Quiddity.NTLM
if (signature.StartsWith("NTLMSSP"))
{
ReadBytes(data);
+ ParseValues(data);
}
else
{
SPNEGONegTokenResp token = this.Decode(data);
this.ReadBytes(token.ResponseToken);
+ ParseValues(token.ResponseToken);
}
- ParseValues();
+
}
public NTLMResponse(byte[] data, bool decode)
@@ -127,18 +129,19 @@ namespace Quiddity.NTLM
{
SPNEGONegTokenResp token = this.Decode(data);
this.ReadBytes(token.ResponseToken);
+ ParseValues(token.ResponseToken);
}
else
{
ReadBytes(data);
+ ParseValues(data);
}
-
- ParseValues();
+
}
public void ReadBytes(byte[] data)
{
-
+
using (MemoryStream memoryStream = new MemoryStream(data))
{
PacketReader packetReader = new PacketReader(memoryStream);
@@ -163,7 +166,6 @@ namespace Quiddity.NTLM
this.EncryptedRandomSessionKeyMaxLen = packetReader.ReadUInt16();
this.EncryptedRandomSessionKeyBufferOffset = packetReader.ReadUInt32();
this.NegotiateFlags = packetReader.ReadBytes(4);
-
string flags = Convert.ToString(BitConverter.ToUInt32(this.NegotiateFlags, 0), 2).PadLeft(this.NegotiateFlags.Length * 8, '0');
@@ -178,7 +180,6 @@ namespace Quiddity.NTLM
}
this.Payload = packetReader.ReadBytes(data.Length - (int)this.DomainNameBufferOffset);
-
}
}
@@ -198,6 +199,20 @@ namespace Quiddity.NTLM
return hash;
}
+
+ public byte[] Encode(byte[] data)
+ {
+ SPNEGONegTokenResp spnegoNegTokenResp = new SPNEGONegTokenResp();
+ spnegoNegTokenResp.NegState = 1;
+ byte[] segment1 = ASN1.Encode(0x04, data);
+ segment1 = ASN1.Encode(0xa2, segment1);
+ byte[] segment2 = ASN1.Encode(0x0a, new byte[1] { spnegoNegTokenResp.NegState });
+ segment2 = ASN1.Encode(0xa0, segment2);
+ byte[] asn1Data = Utilities.BlockCopy(segment2, segment1);
+ asn1Data = ASN1.Encode(0x30, asn1Data);
+ asn1Data = ASN1.Encode(0xa1, asn1Data);
+ return asn1Data;
+ }
private SPNEGONegTokenResp Decode(byte[] data)
{
@@ -212,21 +227,72 @@ namespace Quiddity.NTLM
return spnegoNegTokenResp;
}
-
- private void ParseValues()
+
+ private void ParseValues(byte[] data)
{
this.DomainName = new byte[this.DomainNameLen];
- Buffer.BlockCopy(this.Payload, 0, this.DomainName, 0, this.DomainNameLen);
+ Buffer.BlockCopy(data, (int)this.DomainNameBufferOffset, this.DomainName, 0, this.DomainNameLen);
this.UserName = new byte[this.UserNameLen];
- Buffer.BlockCopy(this.Payload, (int)(this.UserNameBufferOffset - this.DomainNameBufferOffset), this.UserName, 0, this.UserNameLen);
+ Buffer.BlockCopy(data, (int)this.UserNameBufferOffset, this.UserName, 0, this.UserNameLen);
this.Workstation = new byte[this.WorkstationLen];
- Buffer.BlockCopy(this.Payload, (int)(this.WorkstationBufferOffset - this.DomainNameBufferOffset), this.Workstation, 0, this.WorkstationLen);
+ Buffer.BlockCopy(data, (int)this.WorkstationBufferOffset, this.Workstation, 0, this.WorkstationLen);
this.EncryptedRandomSessionKey = new byte[this.EncryptedRandomSessionKeyLen];
- Buffer.BlockCopy(this.Payload, (int)(this.EncryptedRandomSessionKeyBufferOffset - this.DomainNameBufferOffset), this.EncryptedRandomSessionKey, 0, this.EncryptedRandomSessionKeyLen);
- this.LmChallengeResponse = new byte[this.LmChallengeResponseLen];
- Buffer.BlockCopy(this.Payload, (int)(this.LmChallengeResponseBufferOffset - this.DomainNameBufferOffset), this.LmChallengeResponse, 0, this.LmChallengeResponseLen);
+ Buffer.BlockCopy(data, (int)this.EncryptedRandomSessionKeyBufferOffset, this.EncryptedRandomSessionKey, 0, this.EncryptedRandomSessionKeyLen);
+
+ if (this.LmChallengeResponseLen > 0)
+ {
+ this.LmChallengeResponse = new byte[this.LmChallengeResponseLen];
+ Buffer.BlockCopy(data,
+ (int)this.LmChallengeResponseBufferOffset, this.LmChallengeResponse,
+ 0, this.LmChallengeResponseLen);
+ }
+
this.NtChallengeResponse = new byte[this.NtChallengeResponseLen];
- Buffer.BlockCopy(this.Payload, (int)(this.NtChallengeResponseBufferOffset - this.DomainNameBufferOffset), this.NtChallengeResponse, 0, this.NtChallengeResponseLen);
+ Buffer.BlockCopy(data, (int)this.NtChallengeResponseBufferOffset, this.NtChallengeResponse, 0, this.NtChallengeResponseLen);
+ }
+
+ public byte[] GetBytes(string domain, string userName, string workstation, NTLMChallenge ntlmChallenge)
+ {
+ byte[] domainData = Encoding.Unicode.GetBytes(domain);
+ this.DomainNameLen = (ushort)domainData.Length;
+ this.DomainNameMaxLen = this.DomainNameLen;
+ this.DomainNameBufferOffset = (ushort)(domainData.Length + 88);
+ byte[] userNameData = Encoding.Unicode.GetBytes(userName);
+ this.UserNameLen = (ushort)this.Payload.Length;
+ this.UserNameMaxLen = this.UserNameLen;
+ this.UserNameBufferOffset = (ushort)(domainData.Length + userNameData.Length + 88);
+ byte[] workstationData = Encoding.Unicode.GetBytes(workstation);
+ this.WorkstationLen = (ushort)this.Payload.Length;
+ this.WorkstationMaxLen = this.WorkstationLen;
+ this.WorkstationBufferOffset = (ushort)(domainData.Length + userNameData.Length + workstationData.Length + 88);
+
+ using (MemoryStream memoryStream = new MemoryStream())
+ {
+ PacketWriter packetWriter = new PacketWriter(memoryStream);
+ packetWriter.Write(this.Signature);
+ packetWriter.Write(this.MessageType);
+ packetWriter.Write(this.LmChallengeResponseLen);
+ packetWriter.Write(this.LmChallengeResponseMaxLen);
+ packetWriter.Write(this.LmChallengeResponseBufferOffset);
+ packetWriter.Write(this.NtChallengeResponseLen);
+ packetWriter.Write(this.NtChallengeResponseMaxLen);
+ packetWriter.Write(this.NtChallengeResponseBufferOffset);
+ packetWriter.Write(this.DomainNameLen);
+ packetWriter.Write(this.DomainNameMaxLen);
+ packetWriter.Write(this.DomainNameBufferOffset);
+ packetWriter.Write(this.UserNameLen);
+ packetWriter.Write(this.UserNameMaxLen);
+ packetWriter.Write(this.UserNameBufferOffset);
+ packetWriter.Write(this.WorkstationLen);
+ packetWriter.Write(this.WorkstationMaxLen);
+ packetWriter.Write(this.WorkstationBufferOffset);
+ packetWriter.Write(this.EncryptedRandomSessionKeyLen);
+ packetWriter.Write(this.EncryptedRandomSessionKeyMaxLen);
+ packetWriter.Write(this.EncryptedRandomSessionKeyBufferOffset);
+ packetWriter.Write(this.NegotiateFlags);
+ return memoryStream.ToArray();
+ }
+
}
}
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/Structures/NTLMAVPair.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/Structures/NTLMAVPair.cs
index fc25d20..e4405c2 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/Structures/NTLMAVPair.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/Structures/NTLMAVPair.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/Structures/NTLMv1Response.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/Structures/NTLMv1Response.cs
index 64f2890..3bba50c 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/Structures/NTLMv1Response.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/Structures/NTLMv1Response.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/Structures/NTLMv2ClientChallenge.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/Structures/NTLMv2ClientChallenge.cs
index e2781bc..b95d08d 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/Structures/NTLMv2ClientChallenge.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/Structures/NTLMv2ClientChallenge.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/Structures/NTLMv2Response.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/Structures/NTLMv2Response.cs
index 3ff7439..dd12d17 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/Structures/NTLMv2Response.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NTLM/Structures/NTLMv2Response.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NetBIOS/NetBIOSNSChecker.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NetBIOS/NetBIOSNSChecker.cs
index 03de96d..b447ad4 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NetBIOS/NetBIOSNSChecker.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NetBIOS/NetBIOSNSChecker.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NetBIOS/NetBIOSNSHeader.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NetBIOS/NetBIOSNSHeader.cs
index d0ae62d..134f91b 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NetBIOS/NetBIOSNSHeader.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NetBIOS/NetBIOSNSHeader.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NetBIOS/NetBIOSNSPacket.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NetBIOS/NetBIOSNSPacket.cs
index cc4af89..1720848 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NetBIOS/NetBIOSNSPacket.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NetBIOS/NetBIOSNSPacket.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NetBIOS/NetBIOSNSQuestion.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NetBIOS/NetBIOSNSQuestion.cs
index 546cf01..4a37c82 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NetBIOS/NetBIOSNSQuestion.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NetBIOS/NetBIOSNSQuestion.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NetBIOS/NetBIOSNSResource.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NetBIOS/NetBIOSNSResource.cs
index 0a1aeed..19a9490 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NetBIOS/NetBIOSNSResource.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NetBIOS/NetBIOSNSResource.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NetBIOS/NetBIOSSessionService.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NetBIOS/NetBIOSSessionService.cs
index 5cc61ac..65452ea 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NetBIOS/NetBIOSSessionService.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/NetBIOS/NetBIOSSessionService.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/PacketReader.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/PacketReader.cs
index 06588af..b536ae2 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/PacketReader.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/PacketReader.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/PacketWriter.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/PacketWriter.cs
index 4380a40..3ed1ca5 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/PacketWriter.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/PacketWriter.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB/Commands/SMBCOMNegotiateRequest.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB/Commands/SMBCOMNegotiateRequest.cs
index ba6bf36..9fa294d 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB/Commands/SMBCOMNegotiateRequest.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB/Commands/SMBCOMNegotiateRequest.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB/Commands/SMBCOMSessionSetupAndXRequest.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB/Commands/SMBCOMSessionSetupAndXRequest.cs
index 369414d..75d02e4 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB/Commands/SMBCOMSessionSetupAndXRequest.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB/Commands/SMBCOMSessionSetupAndXRequest.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB/Commands/SMBCOMSessionSetupAndXResponse.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB/Commands/SMBCOMSessionSetupAndXResponse.cs
index 3162e61..a8c5244 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB/Commands/SMBCOMSessionSetupAndXResponse.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB/Commands/SMBCOMSessionSetupAndXResponse.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB/SMBHeader.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB/SMBHeader.cs
index 1e1a6af..3995e8d 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB/SMBHeader.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB/SMBHeader.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB/SMBHelper.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB/SMBHelper.cs
index efc9c84..9188393 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB/SMBHelper.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB/SMBHelper.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2CloseRequest.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2CloseRequest.cs
index cea586e..ab9e5d7 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2CloseRequest.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2CloseRequest.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2CloseResponse.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2CloseResponse.cs
index 7241ada..d6690e7 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2CloseResponse.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2CloseResponse.cs
@@ -2,7 +2,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2CreateRequest.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2CreateRequest.cs
index 52c62ff..75edca7 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2CreateRequest.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2CreateRequest.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2ErrorResponse.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2ErrorResponse.cs
index 27aa414..804a7f4 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2ErrorResponse.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2ErrorResponse.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2FlushRequest.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2FlushRequest.cs
index f0ffefb..26bcabe 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2FlushRequest.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2FlushRequest.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2FlushResponse.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2FlushResponse.cs
index 2cebc5c..c2ec554 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2FlushResponse.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2FlushResponse.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2LogoffRequest.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2LogoffRequest.cs
index 0f44f5e..9d527c0 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2LogoffRequest.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2LogoffRequest.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2LogoffResponse.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2LogoffResponse.cs
index 1bd7b3a..75d6f87 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2LogoffResponse.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2LogoffResponse.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2NegotiatelRequest.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2NegotiateRequest.cs
index 02c9497..3ec1f13 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2NegotiatelRequest.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2NegotiateRequest.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2NegotiateResponse.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2NegotiateResponse.cs
index 5a3a584..b08c426 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2NegotiateResponse.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2NegotiateResponse.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2QueryDirectoryRequest.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2QueryDirectoryRequest.cs
index b7f7b22..a9d6cc7 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2QueryDirectoryRequest.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2QueryDirectoryRequest.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2QueryDirectoryResponse.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2QueryDirectoryResponse.cs
index 2d06f10..d6df4fc 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2QueryDirectoryResponse.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2QueryDirectoryResponse.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2ReadRequest.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2ReadRequest.cs
index 27fd68e..b36c145 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2ReadRequest.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2ReadRequest.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2ReadResponse.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2ReadResponse.cs
index dba7f88..7f600ed 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2ReadResponse.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2ReadResponse.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2SessionSetupRequest.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2SessionSetupRequest.cs
index 62e8ef2..b4d491e 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2SessionSetupRequest.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2SessionSetupRequest.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2SessionSetupResponse.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2SessionSetupResponse.cs
index cff9796..fa5d1d5 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2SessionSetupResponse.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2SessionSetupResponse.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2TreeConnectRequest.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2TreeConnectRequest.cs
index 5f1ba50..6af1cea 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2TreeConnectRequest.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2TreeConnectRequest.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2TreeConnectResponse.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2TreeConnectResponse.cs
index 6cb9fa4..63b0b57 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2TreeConnectResponse.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2TreeConnectResponse.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2TreeDisconnectRequest.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2TreeDisconnectRequest.cs
index 8ff07af..a57722d 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2TreeDisconnectRequest.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2TreeDisconnectRequest.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2TreeDisconnectResponse.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2TreeDisconnectResponse.cs
index 847e22f..bcc9876 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2TreeDisconnectResponse.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2TreeDisconnectResponse.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2WriteRequest.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2WriteRequest.cs
index 48ecc63..cf3660d 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2WriteRequest.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2WriteRequest.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2WriteResponse.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2WriteResponse.cs
index d7bb47d..94e9afa 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2WriteResponse.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Commands/SMB2WriteResponse.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/SMB2Header.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/SMB2Header.cs
index f62a8cd..af2ca96 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/SMB2Header.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/SMB2Header.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/SMB2Helper.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/SMB2Helper.cs
index 0969c66..7f8d913 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/SMB2Helper.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/SMB2Helper.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/SMB2Packet.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/SMB2Packet.cs
index cea0137..a7b6437 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/SMB2Packet.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/SMB2Packet.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Structures/SMB2NegotiateContext.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Structures/SMB2NegotiateContext.cs
index 6639f0e..f37e7f0 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Structures/SMB2NegotiateContext.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SMB2/Structures/SMB2NegotiateContext.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SPNEGO/SPNEGONegTokenInit.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SPNEGO/SPNEGONegTokenInit.cs
index 2674a01..1a17cae 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SPNEGO/SPNEGONegTokenInit.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SPNEGO/SPNEGONegTokenInit.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SPNEGO/SPNEGONegTokenResp.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SPNEGO/SPNEGONegTokenResp.cs
index 37747c8..2c4225b 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SPNEGO/SPNEGONegTokenResp.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/SPNEGO/SPNEGONegTokenResp.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/TCP/TCPHeader.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/TCP/TCPHeader.cs
index 7e5c059..e68ff66 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/TCP/TCPHeader.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/TCP/TCPHeader.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/UDP/UDPHeader.cs b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/UDP/UDPHeader.cs
index 34ffa84..75f27cb 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Protocols/UDP/UDPHeader.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Protocols/UDP/UDPHeader.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Quiddity.csproj b/Inveigh/Protocols/Quiddity/Quiddity/Quiddity.csproj
index 616dcfe..3b96839 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Quiddity.csproj
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Quiddity.csproj
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
- <TargetFrameworks>net35;net462;net7.0</TargetFrameworks>
+ <TargetFrameworks>net35;net462;net8.0</TargetFrameworks>
</PropertyGroup>
<PropertyGroup>
@@ -29,17 +29,16 @@
<ItemGroup Condition="'$(TargetFramework)' == 'net462'">
<PackageReference Include="System.DirectoryServices.Protocols">
- <Version>7.0.0</Version>
+ <Version>8.0.0</Version>
</PackageReference>
</ItemGroup>
- <ItemGroup Condition="'$(TargetFramework)' == 'net7.0'">
+ <ItemGroup Condition="'$(TargetFramework)' == 'net8.0'">
<PackageReference Include="System.DirectoryServices.Protocols">
- <Version>7.0.0</Version>
+ <Version>8.0.0</Version>
</PackageReference>
</ItemGroup>
-
<ItemGroup>
<None Include="..\LICENSE">
<Pack>True</Pack>
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Support/ASN1.cs b/Inveigh/Protocols/Quiddity/Quiddity/Support/ASN1.cs
index 7c3e006..ee39329 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Support/ASN1.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Support/ASN1.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Protocols/Quiddity/Quiddity/Support/Utilities.cs b/Inveigh/Protocols/Quiddity/Quiddity/Support/Utilities.cs
index ca1811b..7c75e4f 100644
--- a/Inveigh/Protocols/Quiddity/Quiddity/Support/Utilities.cs
+++ b/Inveigh/Protocols/Quiddity/Quiddity/Support/Utilities.cs
@@ -1,7 +1,7 @@
/*
* BSD 3-Clause License
*
- * Copyright (c) 2022, Kevin Robertson
+ * Copyright (c) 2024, Kevin Robertson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Inveigh/Sniffer/Sniffer.cs b/Inveigh/Sniffer/Sniffer.cs
index de8fa77..b8ff6c2 100644
--- a/Inveigh/Sniffer/Sniffer.cs
+++ b/Inveigh/Sniffer/Sniffer.cs
@@ -613,7 +613,13 @@ namespace Inveigh
string user = Encoding.Unicode.GetString(ntlmResponse.UserName);
string host = Encoding.Unicode.GetString(ntlmResponse.Workstation);
string response = BitConverter.ToString(ntlmResponse.NtChallengeResponse).Replace("-", "");
- string lmResponse = BitConverter.ToString(ntlmResponse.LmChallengeResponse).Replace("-", "");
+ string lmResponse = "";
+
+ if (!Utilities.ArrayIsNullOrEmpty(ntlmResponse.UserName))
+ {
+ lmResponse = BitConverter.ToString(ntlmResponse.LmChallengeResponse).Replace("-", "");
+ }
+
Output.NTLMOutput(user, domain, challenge, response, clientIP, host, "SMB", listenerPort, clientPort, lmResponse);
}
@@ -695,11 +701,12 @@ namespace Inveigh
if (!BitConverter.ToString(smb2SessionSetupRequest.Buffer).Contains("2A-86-48-86-F7-12-01-02-02")) // kerberos
{
+
NTLMHelper ntlmHelper = new NTLMHelper(smb2SessionSetupRequest.Buffer);
if (ntlmHelper.Signature.StartsWith("NTLMSSP"))
{
-
+
if (ntlmHelper.MessageType == 3)
{
NTLMResponse ntlmResponse = new NTLMResponse(smb2SessionSetupRequest.Buffer);
@@ -709,7 +716,13 @@ namespace Inveigh
string user = Encoding.Unicode.GetString(ntlmResponse.UserName);
string host = Encoding.Unicode.GetString(ntlmResponse.Workstation);
string response = BitConverter.ToString(ntlmResponse.NtChallengeResponse).Replace("-", "");
- string lmResponse = BitConverter.ToString(ntlmResponse.LmChallengeResponse).Replace("-", "");
+ string lmResponse = "";
+
+ if (!Utilities.ArrayIsNullOrEmpty(ntlmResponse.UserName))
+ {
+ lmResponse = BitConverter.ToString(ntlmResponse.LmChallengeResponse).Replace("-", "");
+ }
+
Output.NTLMOutput(user, domain, challenge, response, clientIP, host, "SMB", listenerPort, clientPort, lmResponse);
}
diff --git a/LICENSE b/LICENSE
index de58429..8994cfd 100644
--- a/LICENSE
+++ b/LICENSE
@@ -1,6 +1,6 @@
BSD 3-Clause License
-Copyright (c) 2022, Kevin Robertson
+Copyright (c) 2024, Kevin Robertson
All rights reserved.
Redistribution and use in source and binary forms, with or without
diff --git a/README.md b/README.md
index 5a97f3c..9c90f8c 100644
--- a/README.md
+++ b/README.md
@@ -4,7 +4,7 @@ Inveigh is a cross-platform .NET IPv4/IPv6 machine-in-the-middle tool for penetr
## Overview
-Inveigh conducts spoofing attacks and hash/credential captures through both packet sniffing and protocol specific listeners/sockets. The packet sniffing method, which was the basis for the original Powershell version of this tool, has the following advantages:
+Inveigh conducts spoofing attacks and hash/credential captures through both packet sniffing and protocol specific listeners/sockets. The packet sniffing method, which was the basis for the original PowerShell version of this tool, has the following advantages:
* SMB NTLM challenge/response captures over the Window's SMB service
* Fewer visible port binds on the host system
@@ -15,7 +15,7 @@ On current versions of Windows, the default running UDP services allow port reus
### Version Descriptions
* **PowerShell Inveigh** - original version developed over many years. For now at least, this version (1.506) will go without additional updates. Documentation can be found [here](https://github.com/Kevin-Robertson/Inveigh/wiki).
-* **C# Inveigh (aka InveighZero)** - original C# POC code combined with a C# port of most of the Powershell version's code. This version has now been rebuilt for C# and is taking over as the primary version.
+* **C# Inveigh (aka InveighZero)** - original C# POC code combined with a C# port of most of the PowerShell version's code. This version has now been rebuilt for C# and is taking over as the primary version.
### Features
@@ -55,12 +55,12 @@ Inveigh's SDK style project file is setup for .NET 3.5, 4.6.2, and 6.0 with 6.0
### Linux/macOS Platform Targeted Builds
* With .NET 6.0 installed on target system
-`dotnet publish -r linux-x64 -f net6.0 -p:AssemblyName=inveigh`
-`dotnet publish -r osx-x64 -f net6.0 -p:AssemblyName=inveigh`
+`dotnet publish -r linux-x64 -f net8.0 -p:AssemblyName=inveigh`
+`dotnet publish -r osx-x64 -f net8.0 -p:AssemblyName=inveigh`
* Without .NET 6.0 installed on target system
-`dotnet publish --self-contained=true -p:PublishSingleFile=true -r linux-x64 -f net6.0 -p:AssemblyName=inveigh`
-`dotnet publish --self-contained=true -p:PublishSingleFile=true -r osx-x64 -f net6.0 -p:AssemblyName=inveigh`
+`dotnet publish --self-contained=true -p:PublishSingleFile=true -r linux-x64 -f net8.0 -p:AssemblyName=inveigh`
+`dotnet publish --self-contained=true -p:PublishSingleFile=true -r osx-x64 -f net8.0 -p:AssemblyName=inveigh`
## Usage
@@ -112,7 +112,7 @@ Output:
-FileDirectory Default=Working Directory: Valid path to an output directory for enabled file output.
- -FileOutput Default=Disabled: (Y/N) real time file output.
+ -FileOutput Default=Enabled: (Y/N) real time file output.
-FilePrefix Default=Inveigh: Prefix for all output files.