elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Security Series.XSS. [Cross Site Scripting]


  Mostrar Mensajes
Páginas: 1 2 3 4 5 6 7 8 [9] 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 ... 1235
81  Sistemas Operativos / Windows / Re: Crear carpetas y subcarpetas dentro del menú contextual en: 8 Marzo 2024, 21:05 pm
Muchas gracias. Una pregunta tonta. ¿Cómo se pone, pues, para

1. Abrir una carpeta
2. Abrir un programa
3. Abrir un archivo con un programa concreto?

De la misma forma en como lo harías de forma tradicional, es decir, agregando una subclave "command" en la clave de registro que haga referencia a la entrada del menú contextual que quieras utilizar para realizar esas acciones, y especificando el comando a llevar a cabo en el valor por defecto ("@") de esa clave.

Por ejemplo, y tomando como punto de referencia el script con el que ilustré mi respuesta anterior; para que la entrada con nombre "Sub Opción 4" inicie el notepad harías los siguientes cambios:

Código
  1. [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\MenúEnCascada.Command6]
  2. "MUIVerb"="Sub Opción 4"
  3.  
  4. [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\MenúEnCascada.Command6\command]
  5. @="notepad.exe"

Para abrir el Explorer de Windows con el elemento/archivo/directorio seleccionado (en este caso sería una unidad de disco):

Código
  1. [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\MenúEnCascada.Command6\command]
  2. @="\"Explorer.exe\" /Select,\"%1\""

O para iniciar notepad o cualquier otro programa pasándole como argumento el elemento seleccionado (en este caso sería una unidad de disco, por lo cual no tiene mucho sentido, pero es solo un ejemplo):

Código
  1. [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\MenúEnCascada.Command6\command]
  2. @="\"notepad.exe\" \"%1\""

Te aconsejo realizar las modificaciones directamente en el Regedit, y luego exportar la clave a un script de registro para evitar cometer errores de sintaxis (al escribir una ruta, por ejemplo, debes escapar el caracter "\" usando el caracter de escape, que es el mismo caracter "\", quedando así: "\\", y al escribir comillas dobles, también: "\"").

Aténtamente,
Elektro.
82  Sistemas Operativos / Windows / Re: Crear carpetas y subcarpetas dentro del menú contextual en: 8 Marzo 2024, 20:44 pm
Con la sugerencia del programa de terceros mencionado por @SonGoku ya estaba todo dicho (yo iba a proponer el mismo programa, por que al final esa es la solución más rápida, intuitiva y óptima para la mayoría de usuarios), sin embargo me veo en la obligación de contrastar cierta información incorrecta que se ha ofrecido:

En cambio para crear submenús hay que crear una dll que debe implementar ciertas interfaces, que utiliza el menú contextual. ...para lo cual hay que programar y no sé si es este tu caso, luego si con la solución que te ofrece Songoku, te basta, como usuario no te hace falta más entonces.

Debo decir que eso es incorrecto, @Serapis. Crear una extensión de shell de un controlador del menú contextual, o expresado como tu dijiste para que lo entienda mejor la gente: "un archivo DLL que implemente ciertas interfaces de programación" - eso no es una obligatoriedad, no es en absoluto un requisito, simplemente es una forma de hacerlo.

Crear menús, con todos los submenús que uno quiera y con sus correspondientes funciones para cada entrada del menú (abrir una carpeta, iniciar un programa, etc), se puede llevar a cabo manipulando el registro de Windows de forma convencional. Y no es para nada algo complejo, simplemente hay que familiarizarse con el concepto de COMANDOS, y luego ya solo es cuestión de su asignación y reutilización en las claves de los menús donde queramos añadir dichos COMANDOS.

A continuación muestro un script del Registro de Windows que creará un menú en cascada con varios submenús, que se mostrará al hacer click derecho sobre una unidad de disco:

Código
  1. Windows Registry Editor Version 5.00
  2.  
  3. [HKEY_CLASSES_ROOT\Drive\shell\Mi Menú]
  4. "MUIVerb"="Menú En Cascada"
  5. "Icon"=""
  6. "Position"="Top"
  7. "SubCommands"="MenúEnCascada.Command1;MenúEnCascada.Command2"
  8.  
  9. [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\MenúEnCascada.Command1]
  10. "MUIVerb"="Opción 1"
  11. "Icon"=""
  12. "Position"="Top"
  13.  
  14. [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\MenúEnCascada.Command2]
  15. "MUIVerb"="Opción 2"
  16. "Icon"=""
  17. "Position"="Top"
  18. "SubCommands"="MenúEnCascada.Command3;MenúEnCascada.Command4"
  19.  
  20. [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\MenúEnCascada.Command3]
  21. "MUIVerb"="Sub Opción 1"
  22. "Icon"=""
  23. "Position"="Top"
  24.  
  25. [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\MenúEnCascada.Command4]
  26. "MUIVerb"="Sub Opción 2"
  27. "Icon"=""
  28. "Position"="Top"
  29. "SubCommands"="MenúEnCascada.Command5;MenúEnCascada.Command6"
  30.  
  31. [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\MenúEnCascada.Command5]
  32. "MUIVerb"="Sub Opción 3"
  33. "Icon"=""
  34. "Position"="Top"
  35.  
  36. [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\MenúEnCascada.Command6]
  37. "MUIVerb"="Sub Opción 4"
  38. "Icon"=""
  39. "Position"="Top"



(Donde pone "Sub Opción 4" y "5" debería poner "3" y "4", eso fue un simple error de escritura que ya está corregido en el script del Registro de Windows de aquí arriba.)

Y un script para eliminar / deshacer las claves y valores de registro generados por el script anterior:

Código
  1. Windows Registry Editor Version 5.00
  2.  
  3. [-HKEY_CLASSES_ROOT\Drive\shell\Mi Menú]
  4. [-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\MenúEnCascada.Command1]
  5. [-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\MenúEnCascada.Command2]
  6. [-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\MenúEnCascada.Command3]
  7. [-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\MenúEnCascada.Command4]
  8. [-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\MenúEnCascada.Command5]
  9. [-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\MenúEnCascada.Command6]



Por último, aquí tienen además una forma ligeramente distinta de manipular el registro para llevar a cabo la misma finalidad, mediante el uso de la subclave ExtendedSubCommandsKey:

 - learn.microsoft.com - Cómo crear menús en cascada con la entrada del Registro ExtendedSubCommandsKey
 - learn.microsoft.com - How to Create Cascading Menus with the SubCommands Registry Entry
(son dos artículos con ejemplos diferentes)

Aténtamente,
Elektro.
83  Foros Generales / Dudas Generales / Re: Pegatina con licencia HP Windows 7 en: 8 Marzo 2024, 19:24 pm
Si va a abrirse un negocio entonces creo que podrá permitirse invertir alrededor de 10€-15€, que es lo que parece costar una licencia OEM de Windows 7, y alrededor de 20€ una OEM de Windows 10, para asegurar la integridad de su negocio y quitarse las preocupaciones de encima. Aquí tienes algunas:

 - Clave Win 7 Home Premium
 - Clave Win 10 Home
 - Clave Win 10 Pro

Para despejar posibles dudas:

 - (Video de Youtube) - Windows y Office - ¿Son legales las licencias de 10€? Retail vs OEM vs Pirata

Aténtamente,
Elektro.
84  Foros Generales / Foro Libre / Re: Fallece Akira Toriyama, creador de series míticas como Dragon Ball y Dr. Slump en: 8 Marzo 2024, 18:38 pm
Tuvimos la mejor infancia que se puede tener gracias a Akira Toriyama y su universo de animación plasmado en Dragon Ball, en el cual, y mediante pinceladas de humor, sirvieron de apoyo a la educación de nuestros padres para transmitirnos valores como la amistad, la compasión, la masculinidad más vigorizante con la determinación del espíritu de lucha, la búsqueda de la superación personal, la lealtad, y la importancia de proteger a los seres queridos mediante personajes emblemáticos como Son Gokuh, Piccolo, Vegetta y muchos otros.

Si echamos la vista al mundo actual, las series de animación solo parecen servir como vía de difusión para panfletos ideológicos con los que adoctrinar a los más pequeños implantándoles semillas de odio y confrontación con ciertas ideas que no se asemejan en nada a los valores tradicionales universales y conservadores compartidos a través de series de animación japonesas de antaño, como Dragon Ball.

Por eso el legado de Toriyama perdurará como una fuente de inspiración educacional y entretenimiento por los siglos de los siglos.

Descanse en paz.
85  Foros Generales / Dudas Generales / Re: Historial de shorts de YouTube en Chrome Windows en: 7 Marzo 2024, 11:41 am
¿Querrías probar a ver si te ocurre lo mismo con Chrome Portable en Windows? ( https://portableapps.com/apps/internet/google_chrome_portable )

Es el que yo utilizo, y acabo de comprobar que los shorts aparecen en el historial de Youtube.



Aunque ya hayas probado a crear un nuevo perfil, esto que propongo sería como probar Chrome "de fábrica", y de forma portable sin afectar a tu instalación actual de Chrome.

Al menos así se podría confirmar si con una instalación limpia de Chrome (portable) te funciona, y dependiendo de eso se podría asimilar que el problema podría estar relacionado con la cache o alguna extensión o algún valor de la configuración de tu instalación original de Chrome, o por lo contrario el problema tal vez podría ser con la configuración de la cuenta de usuario de Google/Youtube.

En cualqueir caso, ¡es muy raro!.
86  Programación / .NET (C#, VB.NET, ASP) / Re: Limpiar datagrid vinculado a un ObservableCollection - WPF en: 6 Marzo 2024, 17:09 pm
añadí un break; seguido de vmRutas.LimpiarRutasPatrullas(); y listo..

Hola. ¿Te das cuenta que al añadir la sentencia break para interrumpir el ciclo del bucle foreach, solamente acabarás iterando y añadiendo el primer elemento de la colección GenerarRutas.SelectedItems del DataGrid?. Usar un bucle pierde todo el sentido si añades un break de la forma en la que lo detallas, sin criterio / condición específica.

Indiferentemente de eso, el código que has mostrado es algo confuso ya que hay dos miembros con nombre idéntico donde solo cambia el orden de las palabras: PatrullasRutas y RutasPatrullas.

En cualquier caso, con el método vmRutas.LimpiarRutasPatrullas() alteras una colección eliminando todos sus elementos, lo haces en cada iteración del bucle. No hay necesidad. Simplemente mueve ese método fuera del bucle foreach y el problema se debería solucionar.

No puedes iterar una colección al mismo tiempo que la alteras añadiendo o eliminando elementos en la misma. En esos casos se puede recurrir a generar una copia de la colección original para iterar los elementos de la copia y realizar las operaciones de adición o eliminación de elementos en la original.

No manejo WPF, pero si te siguiese dando error entonces haz una copia del objeto selectedItem al añadir dicho elemento en el bucle: PatrullasRutas.Items.Add(copia de selectedItem);.

Aténtamente,
Elektro.
87  Sistemas Operativos / Windows / Re: [SOLUCIONADO] Busco algún programa cuyo instalador genere este tipo de archivo link... en: 6 Marzo 2024, 07:31 am
Usa mklink para crerar el acceso directo.

Por ejemplo:
Código
  1. mklink /d "C:\mi carpeta\acceso directo ejecutable.exe"  "c:\mi carpeta\ejecutable.exe"

Y si todavía no dejara en solo lectura ese campo, siempre puedes cambiar las propiedades de seguridad de la carpeta, seleccionando el usuario o grupo al que se desea establecer los permisos, desmarcando la casilla 'Modificar' y asegurándose que 'solo lectura' esté marcado... al aceptar los cambios, configura así la carpeta y se refleja en el acceso directo.

Te agradezco la ayuda, @Serapis, pero al parecer has malinterpretado el problema y sin querer los has reducido a una cuestión diferente. Te explico, no se trata de una cuestión de accesos directos con limitaciones de seguridad o de permisos de usuarios y grupos. Además, y como ya sabes, mklink no crea accesos directos, sino vínculos simbólicos y enlaces físicos, que aunque se pueda decir "son accesos directos" en realidad no son lo mismo, pero esto ya lo sabes; ni tampoco se pueden utilizar las mismas interfaces nativas de Windows (como IShellLink) para interpretarlos.

La cuestión trata sobre un tipo de accesos directos compuestos por listas de identificadores especiales que apuntan a aplicaciones (véase todas las referencias a estructuras y funciones nativas de Windows: Item Identifiers and Identifier Lists - learn.microsoft.com) junto a otros bloques de información adjuntos al archivo link (véase la siguiente interfaz nativa: IShellLinkDataList interface (shobjidl_core.h) - learn.microsoft.com).

Y esto resulta acabar siendo un tipo de accesos directos tan "especiales" que ni siquiera se pueden leer y editar correctamente y de forma convencional mediante la clase WScript.Shell de Windows Script Host (véase ejemplos de uso: How to create a desktop shortcut with the Windows Script Host - learn.microsoft.com/).



A continuación te muestro un ejemplo del acceso directo del Nero Burning ROM y todo lo que tiene adherido que hace que se diferencie de un acceso directo convencional (véase el bloque "Darwin data block", eso es lo que impide que la propiedad "Destino" se pueda modificar):

Código:
Name: @C:\Program Files (x86)\Nero\Nero 2020\Nero Burning ROM\ShellRes\ShellRes.dll,-200
Relative Path: ..\..\..\..\..\..\Windows\Installer\{4C0CE9D6-70B4-482B-BD43-0885484A45D4}\ARPPRODUCTICON.exe
Working Directory: C:\Program Files (x86)\Nero\Nero 2020\Nero Burning ROM\
Icon Location: C:\Windows\Installer\{4C0CE9D6-70B4-482B-BD43-0885484A45D4}\ARPPRODUCTICON.exe

--- Target ID information (Format: Type ==> Value) ---

  Absolute path: My Computer\C:\Windows\Installer\{4C0CE9D6-70B4-482B-BD43-0885484A45D4}\ARPPRODUCTICON.exe

  -Root folder: GUID ==> My Computer

  -Drive letter ==> C:

  -Directory ==> Windows
    Short name: Windows
    Modified:    2024-03-05 01:18:54
    Extension block count: 1

    --------- Block 0 (Beef0004) ---------
    Long name: Windows
    Created:     2022-12-07 23:26:30
    Last access: 2024-03-05 01:18:54
    MFT entry/sequence #: 100004/430 (0x186A4/0x1AE)

  -Directory ==> Installer
    Short name: Installer
    Modified:    2024-03-05 14:27:36
    Extension block count: 1

    --------- Block 0 (Beef0004) ---------
    Long name: Installer
    Created:     2022-12-07 23:26:30
    Last access: 2024-03-05 14:27:36
    MFT entry/sequence #: 100550/42 (0x188C6/0x2A)

  -Directory ==> {4C0CE9D6-70B4-482B-BD43-0885484A45D4}
    Short name: {4C0CE9D6-70B4-482B-BD43-0885484A45D4}
    Modified:    2024-03-05 14:27:36
    Extension block count: 1

    --------- Block 0 (Beef0004) ---------
    Long name: {4C0CE9D6-70B4-482B-BD43-0885484A45D4}
    Created:     2024-03-05 14:27:36
    Last access: 2024-03-05 14:27:36
    MFT entry/sequence #: 304917/84 (0x4A715/0x54)

  -File ==> ARPPRODUCTICON.exe
    Short name: ARPPRODUCTICON.exe
    Modified:    2024-03-05 14:27:36
    Extension block count: 1

    --------- Block 0 (Beef0004) ---------
    Long name: ARPPRODUCTICON.exe
    Created:     2024-03-05 14:27:36
    Last access: 2024-03-05 14:27:36
    MFT entry/sequence #: 304918/129 (0x4A716/0x81)

--- End Target ID information ---

--- Extra blocks information ---

>> Darwin data block
   Application ID: A4]M@laZ4?b(AiR%~~6mApplication>A1J(iGBK%@!+KRN_pC!1
   Product code: {4C0CE9D6-70B4-482B-BD43-0885484A45D4}
   Feature name: Application
   Component ID: {C753CADD-12FE-4AC3-9B23-C977C9CE7528}

>> Property store data block (Format: GUID\ID Description ==> Value)
   9f4c2855-9f79-4b39-a8d0-e1d42de1d5f3\12     App User Model Start Pin Option     ==> 1

---------- Processed C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Nero 2020\Nero Burning ROM - copia (2).lnk in 0,54832880 seconds ----------

(Análisis de archivo generado con el programa LECmd: https://github.com/EricZimmerman/LECmd)

Los GUIDs del bloque "Darwin data block" hacen referencia a claves de registro del producto instalado (de un instalador MSI). Y al parecer Windows decide que es mejor deshabilitar la propeidad "Destino" en estas circunstancias para el acceso directo que apunta a productos MSI, no se muy por qué.



Ahora, tras haber investigado y analizado en profundidad este tipo de acceso directo, en mi programa de código abierto Easy Link File Viewer he logrado añadir soporte para leer y editar al menos los accesos directos que corresponden a identificadores de aplicaciones instaladas mediante un instalador MSI (como el acceso directo del Nero Burning ROM y seguramente los del Word):

 - Easy Link File Viewer - A desktop application for Windows to read, modify and write shortcut files (.lnk) with ease.

Para ello descubrí estas dos funciones de MSI con las que obtengo información adicional sobre ese tipo de accesos directos:

 - MsiGetShortcutTargetW function (msi.h)
 - MsiGetComponentPathW function (msi.h)

Y voilá, la ruta de destino real obtenida, y lista para ser editada:



Aparte de Easy Link File Viewer no existe ningún otro programa disponible en Internet que pueda interpretar y editar este tipo de accesos directos "especiales" (ninguno de ellos es capaz de obtener la ruta de destino correcta). Créanme, he probado varias decenas de programas diferentes para ver si me servía alguno (y si le podía echar mano a su código fuente). ¡Ni siquiera Windows permite editar el destino en las propiedades del archivo link, como ya se ha visto!, y ni siquiera con Windows Script Host se puede obtener correctamente la ruta de destino de este tipo de accesos directos "especiales", como ya dije anteriormente.

Parecieran ser un tipo de accesos directos con poco soporte, por así decirlo, Windows los interpreta de forma muy limitada impidiendo su edición, y para colmo la documentación sobre todos estos aspectos, relacionados con la programación, es prácticamente nula.



El programa de terceros que ya mencioné, LECmd, puede leer de forma exquisita este tipo de accesos directos, pero no tiene implementada la funcionalidad de editarlos.

Aunque, y para hacer justicia, cabe destacar que LECmd es capaz de leer toda esta información "especial" de un link de forma muy sofisticada, como ya dije, de forma exquisita, pues en su código fuente (desarrollado en C#) no se recurre a interfaces nativas de Windows ni nada similar, sino que se lleva a cabo un análisis del contenido RAW (los bytes) del archivo link, empezando por el bloque de la cabecera de un archivo link para determinar, entre otras cosas, si el archivo link tiene especificado una lista de identificadores, y se va desglosando el contenido de los demás bloques, offset a offset, de forma meticulosa y muy precisa.

LECmd también se puede considerar único en lo que hace por el modo en el que lo hace para soportar el análisis de los datos de un archivo link, que otros programas no pueden. Pero LECmd sirve para leer archivos link, no para editarlos, insisto.

Para mi sería un coñazo implementar esa misma metodología y trasladarla a un enfoque que permita la edición en una interfaz gráfica, así que me conformo con los avances que he realizado para poder leer accesos directos creados por instaladores MSI, asumiendo que no es ni por asomo tan sumamente sofisticado como la metodología empleada en LECmd, y que tendrá sus limitaciones y posibles errores de lógica que todavía no habré descubierto, principalmente por la falta de suficientes muestras a mi disposición de este tipo de accesos directos.

¡Un saludo!.
88  Informática / Hardware / Re: Imágenes y vídeos en mi USB están cifrados en: 5 Marzo 2024, 22:01 pm
Los archivos con extensión PFILE están cifrados mediante EFS, y los archivos de 4 kb al parecer son metadatos adjuntos de forma individual, que indicarán algo relacionado sobre el cifrado.

Aquí se detalla un procedimiento para descifrar los archivos, pero no creo que te sirva para descifrarlos si no lo haces con tu antigua cuenta de usuario: https://superuser.com/a/1827832

Lo que se menciona en la cita sobre crear un archivo del mismo tamaño (supongo que se refiere del mismo tamaño que el archivo PFILE cifrado) puedes hacerlo con el comando fsutil en la CMD, por ejemplo:

Código:
fsutil file createnew "C:\Archivo.pfile" TAMAÑO_EN_BYTES
89  Sistemas Operativos / Windows / Re: Busco algún programa cuyo instalador genere este tipo de archivo link... en: 5 Marzo 2024, 15:31 pm

Ahora sí, me crea el acceso directo del Nero como el que mostraste en la imagen.

Genial. Gracias una vez más, Songoku.

Ya me estaba desesperando (tanto como para tener que pedir ayuda) y gracias a ti lo he solucionado bastante rápido tras haber publicado este hilo.

Doy el tema por solucionado.
90  Sistemas Operativos / Windows / Re: Busco algún programa cuyo instalador genere este tipo de archivo link... en: 5 Marzo 2024, 14:24 pm
He estado mirando en todos los accesos directos de todos mis programas instalados y solo la suite de Nero Platinum crea los accesos directos del modo en que tu dices.

Mi versión del Nero Platinum no es la ultima ni de lejos. Prueba con la ultima que seguro que sigue igual, y si no es así dímelo y te paso la mía que como ves si crea ese tipo de accesos directos.


¡Muchas gracias por el tiempo empleado!. He descargado la trial más reciente de la Nero Platinum Suite desde el sitio web oficial, y desde el programa de Nero Platinum Suite ("Nero Start") instalé el Nero Burning ROM, pero nada, todos los archivos que me ha creado son accesos directos convencionales.

Si pudieras pasármelo por privado, o decirme más o menos de que año es el que tú usas, o que versión exacta del Nero Burning ROM estás usando a lo mejor con eso ya me apaño para encontrarlo.

Gracias de nuevo. >:D
Páginas: 1 2 3 4 5 6 7 8 [9] 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 ... 1235
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines