日韩欧美国产精品免费一二-日韩欧美国产精品亚洲二区-日韩欧美国产精品专区-日韩欧美国产另-日韩欧美国产免费看-日韩欧美国产免费看清风阁

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

【C#】查詢Windows服務器遠程桌面RDP協議登錄事件,獲取并導出當前服務器用戶登錄記錄

admin
2025年2月14日 15:32 本文熱度 831

【C#】查詢Windows服務器遠程桌面RDP協議登錄事件,獲取并導出當前服務器用戶登錄記錄

參考:https://github.com/uknowsec/SharpEventLog

簡介:讀取登錄過本機的登錄失敗或登錄成功的所有計算機信息,在內網滲透中快速定位運維管理人員。

輸出:登錄時間、源IP地址、域名、用戶名、是否成功

原理:通過Win API 獲取windows事件安全日志中ID為4624、4625的事件,提取事件中的關鍵信息。

源碼參考:

using System;

using System.Collections.Generic;

using System.Diagnostics;

using System.Linq;

using System.Text;


namespace SharpEventLog

{

    class Program

    {

        static void Main(string[] args)

        {

            System.Console.WriteLine("");

            System.Console.WriteLine("Author: Uknow");

            System.Console.WriteLine("Github: https://github.com/uknowsec/SharpEventLog");

            System.Console.WriteLine("");

            if (args.Length == 0)

            {

                System.Console.WriteLine("Usage: SharpEventLog.exe -4624");

                System.Console.WriteLine("       SharpEventLog.exe -4625");

            }

            if (args.Length == 1 && (args[0] == "-4624"))

            {

                EventLog_4624();

            }

            if (args.Length == 1 && (args[0] == "-4625"))

            {

                EventLog_4625();

            }

        }


        public static void EventLog_4624()

        {

            EventLog log = new EventLog("Security");

            Console.WriteLine("\r\n========== SharpEventLog -> 4624 ==========\r\n");

            var entries = log.Entries.Cast<EventLogEntry>().Where(x => x.InstanceId == 4624);

            entries.Select(x => new

            {

                x.MachineName,

                x.Site,

                x.Source,

                x.Message,

                x.TimeGenerated

            }).ToList();

            foreach (EventLogEntry log1 in entries)

            {

                string text = log1.Message;

                string ipaddress = MidStrEx(text, " 源網絡地址: ", " 源端口:");

                string username = MidStrEx(text, "新登錄:", "進程信息:");

                username = MidStrEx(username, " 帳戶名: ", " 帳戶域: ");

                DateTime Time = log1.TimeGenerated;

                if (ipaddress.Length >= 7)

                {

                    Console.WriteLine("\r\n-----------------------------------");

                    Console.WriteLine("Time: " + Time);

                    Console.WriteLine("Status: True");

                    Console.WriteLine("Username: " + username.Replace("\n", "").Replace(" ", "").Replace("\t", "").Replace("\r", ""));

                    Console.WriteLine("Remote ip: " + ipaddress.Replace("\n", "").Replace(" ", "").Replace("\t", "").Replace("\r", ""));

                }

            }

        }


        public static void EventLog_4625()

        {

            EventLog log = new EventLog("Security");

            Console.WriteLine("\r\n========== SharpEventLog -> 4625 ==========\r\n");

            var entries = log.Entries.Cast<EventLogEntry>().Where(x => x.InstanceId == 4625);

            entries.Select(x => new

            {

                x.MachineName,

                x.Site,

                x.Source,

                x.Message,

                x.TimeGenerated

            }).ToList();

            foreach (EventLogEntry log1 in entries)

            {

                string text = log1.Message;

                string ipaddress = MidStrEx(text, " 源網絡地址: ", " 源端口:");

                string username = MidStrEx(text, "新登錄:", "進程信息:");

                username = MidStrEx(username, " 帳戶名: ", " 帳戶域: ");

                DateTime Time = log1.TimeGenerated;

                if (ipaddress.Length >= 7)

                {

                    Console.WriteLine("\r\n-----------------------------------");

                    Console.WriteLine("Time: " + Time);

                    Console.WriteLine("Status: Flase");

                    Console.WriteLine("Username: " + username.Replace("\n", "").Replace(" ", "").Replace("\t", "").Replace("\r", ""));

                    Console.WriteLine("Remote ip: " + ipaddress.Replace("\n", "").Replace(" ", "").Replace("\t", "").Replace("\r", ""));

                }

            }

        }


        public static string MidStrEx(string sourse, string startstr, string endstr)

        {

            string result = string.Empty;

            int startindex, endindex;

            startindex = sourse.IndexOf(startstr);

            if (startindex == -1)

                return result;

            string tmpstr = sourse.Substring(startindex + startstr.Length);

            endindex = tmpstr.IndexOf(endstr);

            if (endindex == -1)

                return result;

            result = tmpstr.Remove(endindex);


            return result;

        }

    }

}

使用說明

打開cmd.exe

> SharpEventLog.exe

Author: Uknow

Github: https://github.com/uknowsec/SharpEventLog

Usage: SharpEventLog.exe -4624

       SharpEventLog.exe -4625


該文章在 2025/2/14 15:36:03 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 男女午夜爽爽大片免费 | 设看到很多欧美日韩一区二区综 | 91热爆在线 | 亚洲一线产区二线产区精华 | 国内日本精品视频在线观看 | 一区二区视频传媒有限公 | 最近免费中文字幕大全 | 99精品无人区乱码1区2区3区 | 国产高清视频在线免费观看 | 亚洲一级淫片免费在线观看 | 国产成视频 | 中文欧美亚洲日 | 国产免费一区二区三区在线观看 | 最新高清电影免费在线观看下载 | 中文字幕第一页在线 | 女人精aaa| 国产激情免费播放 | 电视剧大全 | 亚洲aⅴ精品一区二区三区 亚洲成v片 | 国产精品亚洲综合天堂夜夜 | 小草国产精品情侣 | 一区二区三区四区在线播放视频 | 中文字幕资源网在线观看免费 | 强伦轩一区二区三区四区播放方式 | 成人午夜爽 | 亚洲+欧洲+日产+欧美 | 日韩综合精品一区二区 | 激情五月综合网 | 亚洲高清国产品国语在线观看 | 国内精品视频在线观看九九 | 国产网红主 | 国产一区二区三区四区五区 | 成人国产一区二区 | 日产精品一卡2卡三卡4卡乱码 | 国产一区欧美亚洲 | 精品午夜国产人人福利 | 欧美孕妇xxxx| 国产精品外围在线观看 | 三年片最新电影免费观看 | 国产国产人免费人成 | 香港日本三级在线播放 |