午夜视频在线观看区二区-午夜视频在线观看视频-午夜视频在线观看视频在线观看-午夜视频在线观看完整高清在线-午夜视频在线观看网站-午夜视频在线观看亚洲天堂

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

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

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

【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

主站蜘蛛池模板: 国产aⅴ精品一区二区三区久久 | 国产精品原创巨作av女教师 | 国产区欧美区一区二区精品区 | 国产夜色福利院在线观看免费 | av无码免费在线一区二区三区 | 国产自慰在线免费观看 | 国产午夜福利高清小视频合 | 精品一区二区三区蜜桃臀小说 | 国产三级自拍亚洲色欲色欲 | 福利一区二区久久 | 国产成人久久精品一区二区 | av无码国产在线观看岛国 | 国产成人高清激情视频在线观看 | 国产成人精品系列在线观看 | 国产午夜无码片在线观看影视 | 精品国产一区av | 国产精品白丝jk白祙喷水视频 | 丰满人妻av无码一区二区 | 国产成人秘在线观看 | 国产成人一区二区三区综合区 | 国产在线视频欧美一区 | 国产精品无码免费专区午夜 | 精品一区二区二区四区五区 | 国产精品制服丝袜无码 | 国产精品人人爽人人做我的可爱 | 国产精品国产免无码专区 | 国产精品欧美在线观看 | 国产成人综合亚洲av网站 | 91久久精品国产亚洲 | 国产精品欧美亚洲韩国日本不卡 | 国产偷录叫床高潮录音 | 国产精品白浆无码流出 | 国产精品毛片无码一区二区蜜桃 | 国产精品一区在线观看第一页 | 91美女片黄在线观看 | 国产在线精品欧美日韩电影 | 国产精品白丝喷水在线观看 | 国产91福利小视频在线观看 | 成人欧美一区二区三区在线观看 | 精品无码aⅴ | 国产成人精品久久一区二区三区 |