From 4559fd09eab796e6ed7c04108aef70069ea45cf5 Mon Sep 17 00:00:00 2001 From: Carlos Polop Date: Sat, 17 Jan 2026 15:25:23 +0100 Subject: [PATCH] Fix SOAP service enumeration yield in try/catch --- .../Info/ApplicationInfo/SoapClientProxyAnalyzer.cs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/winPEAS/winPEASexe/winPEAS/Info/ApplicationInfo/SoapClientProxyAnalyzer.cs b/winPEAS/winPEASexe/winPEAS/Info/ApplicationInfo/SoapClientProxyAnalyzer.cs index 9a499a3..cb14fc6 100644 --- a/winPEAS/winPEASexe/winPEAS/Info/ApplicationInfo/SoapClientProxyAnalyzer.cs +++ b/winPEAS/winPEASexe/winPEAS/Info/ApplicationInfo/SoapClientProxyAnalyzer.cs @@ -112,6 +112,7 @@ namespace winPEAS.Info.ApplicationInfo private static IEnumerable EnumerateServiceCandidates() { + var results = new List(); try { using (var searcher = new ManagementObjectSearcher(@"root\\cimv2", "SELECT Name, DisplayName, PathName, StartName FROM Win32_Service")) @@ -127,14 +128,14 @@ namespace winPEAS.Info.ApplicationInfo if (!IsDotNetBinary(binaryPath)) continue; - yield return new SoapClientProxyCandidate + results.Add(new SoapClientProxyCandidate { BinaryPath = binaryPath, SourceType = "Service", Name = service["Name"]?.ToString() ?? string.Empty, Account = service["StartName"]?.ToString() ?? string.Empty, Extra = service["DisplayName"]?.ToString() ?? string.Empty, - }; + }); } } } @@ -142,6 +143,8 @@ namespace winPEAS.Info.ApplicationInfo { Beaprint.GrayPrint("Error while enumerating services for SOAP client analysis: " + ex.Message); } + + return results; } private static IEnumerable EnumerateProcessCandidates()