30 de agosto de 2000: en este problema:

  1. EDITORIAL

  2. NOVEDADES DE SYSINTERNALS

    • ListDlls v2.23
    • HandleEx v2.26
    • ElogList v2.02
    • LoggedOn v1.1
    • Bluescreen v2.21
    • PageDefrag v2.01
    • LoadOrder v1.1
    • ClockRes v1.0
    • BgInfo v1.0
    • Dentro Windows 2000, 3rd Ed.
    • Sysinternals en Microsoft
  3. INFORMACIÓN INTERNA

    • La potencia del privilegio DEBUG
    • ¿Nuevas API en Win2K SP1?
    • WinDev 2000 Oeste
  4. LO QUE VIENE

    • Tokenmon

CO-PATROCINADOR: SOFTWARE DE INVERNALS

El Boletín de Sysinternals está patrocinioado por El software Dennals, en la Web en www.winternals.com. Winternals Software es el desarrollador y proveedor líder de herramientas de sistemas avanzados para Windows NT/2K. Los productos de Software Desnales incluyen FAT32 para Windows NT 4.0, NTFSDOS Professional Edition (un controlador NTFS de lectura/escritura para DOS) y Recuperación remota.

La versión ERD Commander 2000 de Dennals Software es la versión más reciente de su ERD Commander producto. ERD Commander nuevas características de 2000, incluidos el Registro integrado y los editores de archivos, hacen que sea la herramienta de recuperación de Windows NT y Windows 2000 más avanzada que existe. Puede instalar ERD Commander 2000 en disquetes, un CD-ROM e incluso la unidad de disco duro de un sistema para un acceso rápido, y su asistente para la instalación facilita la adición de SCSI de terceros y otros controladores de almacenamiento masivo. ERD Commander 2000 es 349 USD o solo 49 USD para los propietarios ERD Commander Professional existentes. Encuentre más información y descargue la versión de prueba en www.winternals.com/products/erdcommander2000.shtml.

CO-PATROCINADOR: WINDOWS 2000 MAGAZINE

Windows 2000 Magazine contiene soluciones prácticas para personas que trabajan con Windows NT/2000 todos los días. Pedir un problema de ejemplo gratuito ahora y sin riesgo. Si decide continuar con la suscripción, recibirá 13 incidencias más con un 40 % de descuento en el precio del quiosco de noticias. Suscríbase hoy en: http://www.win2000mag.com/sub.cfm?code=fs00inhs13

Hola a todos:

Le damos la bienvenida al boletín sysinternals. El boletín tiene actualmente 25 000 suscriptores.

Dedico mucho tiempo a Regmon, Filemon y DebugView, herramientas desarrolladas en Sysinternals. Regmon es un monitor de acceso al Registro (www.sysinternals.com/regmon.htm), Filemon es un monitor de acceso a archivos (www.sysinternals.com/filemon.htm) y DebugView es un monitor de salida de depuración (www.sysinternals.com/dbgview.htm). En ocasiones, me encontraré con una aplicación o un controlador de dispositivo instalado en uno de mis varios sistemas que genera actividad continua que es visible en una de estas herramientas. No estoy hablando de la actividad necesaria, pero las acciones que realiza el software suelen ser de naturaleza repetitiva y el examen de los seguimientos de salida revela que el software usa una técnica de sondeo donde es posible el uso de algún otro mecanismo menos intrusivo.

Por ejemplo, varios escáneres de virus comerciales consultan su archivo de firma de virus varias veces por segundo para ver si se ha actualizado. Uno de mis sistemas tiene un controlador de impresora de un fabricante de impresoras importante que genera continuamente instrucciones de depuración que, mediante su inclusión de la palabra "sondeo", anuncian que están sondear. En uno de mis ejemplos favoritos, una utilidad anunciada como mejora del rendimiento del sistema de un proveedor de utilidades principal consulta varias veces por segundo varias de las claves del Registro del proveedor. Un ejemplo de otro tipo de codificación spy está en un adaptador de red de un proveedor de red principal que incluye un componente de software en modo de usuario que contiene puntos de interrupción de depuración insertados que se ejecutan continuamente a medida que se ejecuta el software. Si una aplicación necesita detectar un cambio en el archivo, puede solicitar una notificación de cambio de directorio. De forma similar, si necesita detectar cambios en una clave del Registro, puede solicitar una notificación de cambio de clave y el software comercial nunca debe contener salidas de depuración o puntos de interrupción de depuración habilitados de forma predeterminada.

Sin embargo, quizás el ejemplo más egregido sea el servicio del programa multimedia de Microsoft Windows que se incluye con Windows 2000 Server ( ): lee los primeros 2 KB de a una velocidad de aproximadamente 60 veces por segundo en un sistema en el que, de lo contrario, no hay ninguna actividad (incluido ningún servicio \Winnt\System32\Windows Media\Server\Npsm.exe\Winnt\System32\Windows Media\Server\ASDB\mdsas.mdb multimedia). Esto no es un suspenso, especialmente porque esto puede afectar negativamente al rendimiento general del servidor.

Estoy seguro de que si ha usado Regmon, Filemon o DebugView durante cualquier período de tiempo, probablemente se haya encontrado con ejemplos similares. Cuando vea uno, no solo establezca un filtro y olvídelo, envíe un correo electrónico al proveedor que se queje de su programación desaprobada.

Pase el boletín a los amigos que cree que podrían estar interesados en su contenido.

Gracias

-Mark

NOVEDADES DE SYSINTERNALS

LISTDLLS V2.23

ListDLLs es una utilidad de línea de comandos que muestra información detallada sobre los archivos DLL que los procesos han cargado. Por ejemplo, ListDLL muestra la dirección de memoria base, el tamaño, la versión y la ruta de acceso completa de cada archivo DLL. Esta nueva versión muestra la línea de comandos que se usó para iniciar un proceso, incluidos los parámetros que se pasaron en la línea de comandos. Esto puede ayudarle a distinguir entre varios procesos y solucionar problemas relacionados con opciones específicas de la línea de comandos.

Descargue ListDLLs v2.23 en www.sysinternals.com/listdlls.htm.

HANDLEEX V2.26

HandleEx es una aplicación que presenta información sobre qué identificadores y archivos DLL se han abierto o cargado. Su pantalla consta de dos sub windows. En la parte superior siempre se muestra una lista de los procesos activos actualmente, incluidos los nombres de sus cuentas propietarias, mientras que la información que se muestra en la ventana inferior depende del modo en el que se encuentra HandleEx: si HandleEx está en modo de identificador, verá los identificadores que el proceso seleccionado en la ventana superior ha abierto. Si está en modo DLL, verá los archivos DLL y los archivos asignados a memoria que ha cargado el proceso.

La versión más reciente de HandleEx incluye varias características nuevas. En primer lugar, al igual que ListDLL, ahora se muestra la línea de comandos que se usó para iniciar un proceso al ver las propiedades del proceso.

Una de las deficiencias de HandleEx anterior a esta versión era que, aunque mostró el nombre de la cuenta en la que se estaban ejecutando los procesos y procesos del sistema de la sesión de inicio de sesión, no era capaz de sortear el modelo de seguridad de Windows NT/2000 para mostrar al propietario de los procesos iniciados desde otras cuentas de usuario (el programa Pview de los kits de recursos de Windows NT/2000 también sufre esta limitación). Esto era evidente en los entornos NT 4 Terminal Server y Windows 2000 Terminal Services, donde HandleEx indicaba que los procesos iniciados desde otras sesiones de usuario tenían propietarios desconocidos. HandleEx v2.26 implementa un truco para que pueda determinar la cuenta propietaria de todos los procesos, sin excepción, lo que la hace una herramienta ideal para entornos de Terminal Services.

La última característica nueva de HandleEx v2.26 permite forzar el cierre de cualquier identificador abierto. He agregado esta característica después de recibir muchas solicitudes para ella. Sin embargo, le recomiendo que lo use con mucha precaución, ya que las aplicaciones generalmente no se escriben para esperar que los identificadores puedan dejar de ser válidos de repente y las aplicaciones con identificadores cerrados forzados pueden comportarse de forma errática o bloquearse como resultado.

Descargue HandleEx v2.26 en www.sysinternals.com/handleex.htm.

ELOGLIST V2.02

El kit de Windows 2000 incluye una herramienta denominada ELogDmp que permite volcar registros de un registro de eventos en el equipo local o remoto. ELogList es más eficaz que ElogDmp, ya que también permite especificar un nombre de cuenta y una contraseña opcionales para que pueda acceder a los registros de eventos de un equipo desde una cuenta diferente a la desde la que se ejecuta la herramienta. Además, mientras que la herramienta ElogDmp muestra las entradas del registro de eventos en su forma sin formato, lo que dificulta la interpretación de la salida, esta actualización de ElogList da formato a las entradas del registro de eventos para mostrar texto tal como aparece en los visores de eventos de Windows NT/2000. Incluso cuando se muestran registros de eventos desde sistemas remotos, ElogList usa los archivos de mensaje correctos en el sistema remoto para sus datos de cadena de formato.

Descargue ElogList v2.02 en www.sysinternals.com/eloglist.htm.

LOGGEDON V1.1

LoggedOn es un applet de línea de comandos que indica quién ha iniciado sesión en un equipo determinado, ya sea localmente o a través de recursos compartidos. La actualización de la versión 1.1 permite buscar en la red sesiones de inicio de sesión asociadas a un usuario determinado. Esta característica es útil en situaciones en las que desea realizar actualizaciones en una cuenta de usuario y necesita comprobar que el usuario no ha iniciado sesión actualmente.

Descargue LoggedOn v1.1 con el origen completo en www.sysinternals.com/misc.htm.

BLUESCREEN V2.21

La mayoría de los usuarios ya está familiarizado con el famoso protector de pantalla azul Sysinternals, que representa con precisión un bloqueo y reinicio de Windows NT o Windows 2000. Desde su versión inicial, he recibido continuamente solicitudes de usuarios de Windows 9x que quieren ejecutar el protector de pantalla en sus equipos, por lo que finalmente lo he portado Windows 9x. En Windows 9x simula un bloqueo y reinicio Windows 2000.

El único requisito para usar el protector de pantalla sysintenals Blue Screen en Windows 9x es obtener una copia de un archivo Windows 2000 Ntoskrnl.exe para colocarlo en el directorio: La pantalla azul requiere el archivo para la pantalla de presentación \Windows\System de Windows 2000.

Ahora puede confundir a los usuarios no Windows 9 veces que vuelvan a su equipo solo para descubrir que está bloqueado en un ciclo de bloqueo y reinicio de Windows 2000.

Descargue Bluescreen Screen Saver v2.21 en www.sysinternals.com/bluescreen.htm.

PAGEDEFRAG V2.01

PageDefrag es una utilidad de desfragmentación que se ejecuta en tiempo de arranque para desfragmentar los archivos de paginación del sistema y los subárboles del Registro. PageDefrag fue la primera utilidad capaz de desfragmentar los subárboles del Registro, pero desde su lanzamiento esa funcionalidad se ha agregado a varios desfragmentador comerciales. Sin embargo, PageDefrag sigue siendo gratuito y la versión 2.01 funciona en Windows 2000, así como en Windows NT 4.

Si está interesado en la interfaz de desfragmentación proporcionada por Windows NT 4 y Windows 2000, puede obtener información sobre ella y descargar código fuente en un desfragmentador de archivos interactivo en www.sysinternals.com/defrag.htm. Sysinternals documentó la interfaz de desfragmentación años antes de que Microsoft la incluyera en el SDK de plataforma y varios desfragmentadores comerciales usaron nuestra documentación y el código de ejemplo.

Descargue PageDefrag v2.01 en www.sysinternals.com/pagedfrg.htm. Vea la documentación de la interfaz de desfragmentación en www.sysinternals.com/defrag.htm.

LOADORDER V1.1

¿Alguna vez se ha preguntado en qué orden se cargan e inicializan los controladores de dispositivos y los servicios? Ahora puede averiguarlo fácilmente. LoadOrder es una utilidad que procesa la información de para crear una imagen del orden de carga del HKLM\System\CurrentControlSet\Services controlador y del servicio.

Descargue LoadOrder v1.1 en www.sysinternals.com/misc.htm.

CLOCKRES V1.0

En mis artículos sobre el programador he hablado sobre el hecho de que Windows NT/2000 thread quanta (la longitud del turno de un subproceso para ejecutarse en una CPU) se basa en la resolución del reloj del sistema. La resolución del reloj también afecta a la latencia de Windows eventos basados en temporizador. En el artículo www.sysinternals.com/timer.htm incluso se describe la forma en que las aplicaciones pueden manipular la resolución del reloj. En la mayoría de los SMP, la resolución es de 15 ms y, en los uniprocesadores, sus 10 ms, valores establecidos por el estándar SMP y las HAL de un solo procesador (capa de abstracción de hardware).

Aunque la mayoría de los sistemas usan los valores comunes enumerados anteriormente, ¿cómo se puede determinar la resolución real del reloj en los equipos? La respuesta se encuentra en la API GetSystemTimeAdjustment de Win32, que indica si el sistema está aplicando un ajuste periódico al reloj de la hora del día. Simplemente sucede que esta API también devuelve el intervalo del reloj. El applet ClockRes usa la API para saber la resolución del reloj de un sistema.

Descargue ClockRes más el origen en www.sysinternals.com/misc.htm.

BGINFO V1.0

Si es administrador a cargo de varios servidores, probablemente dedica una cantidad significativa de tiempo a abrir varios cuadros de diálogo de información para recordar los valores de varias propiedades del sistema, como la versión instalada del Service Pack, las direcciones IP, el nombre del equipo, el tamaño de memoria y la velocidad del procesador. Ahora puede tener toda esta información en vista sin formato en el escritorio de cada servidor mediante la utilidad BgInfo que desarrolló BgInfo.

Al ejecutarlo, BgInfo crea un fondo de escritorio que notifica automáticamente una variedad de características útiles del sistema. Puede colocar BgInfo en la carpeta Start para que la información esté disponible cada vez que inicie sesión, y puede modificar los datos que muestra BgInfo, incluso agregando los suyos propios. Con BgInfo instalado en los servidores, ahorrará el tiempo que ha dedicado repetidamente a buscar información olvidada fácilmente.

Descargue BgInfo v1.0 en www.sysinternals.com/misc.htm.

INSIDE WINDOWS 2000, 3RD EDITION

El libro oficial sobre los Windows 2000 ya está disponible. Esta edición, coautora de David Aledra (www.solsem.com) y Mark Russinconexión, es más del 40 % mayor que la anterior, con una nueva cobertura de redes, plug-and-play, administración de energía, servicios, registro, WMI, arranque y apagado, y almacenamiento. También incluye un CD con varias herramientas eficaces, no disponibles en ningún otro lugar, para investigar Windows 2000 internos.

Vea la tabla de contenido y el orden del libro ahora a través de www.sysinternals.com/insidew2k.htm.

SYSINTERNALS AT WWW.MICROSOFT.COM

No tengo nuevos artículos de KB que hacen referencia a Sysinternals para informar, pero Microsoft ha agregado algunos vínculos bastante de alto perfil a Sysinternals en la parte technet de su sitio. El primero está en "Preguntarnos sobre... Columna "Seguridad" en www.microsoft.com/TechNet/security/au022800.asp, donde el columnista Ntfs Phishbray advierte a los lectores de que NTFSDOS (www.sysinternals.com/ntfspro.htm) puede ser utilizado por un usuario malintencionado para modificar el contenido de un controlador de dominio de Windows 2000 Active Directory.

La segunda referencia está en la columna "Dentro de Microsoft" en www.microsoft.com/technet/inside/default.asp. La columna es de estilo Q A y comienza con dos preguntas relacionadas con la determinación de qué & aplicación tiene abierto un archivo determinado. En el curso de la respuesta, donde los lectores apuntan a HandleEx (www.sysinternals.com/handleex.htm) y NtHandle (www.sysinternals.com/nthandle.htm), el autor del artículo (el "Juste") indica esto sobre Sysinternals: "Solo hay un TON de excelentes utilidades que no le van a costar un costo. Incluso el Objeto hace referencia a Sysinternals de vez en cuando (¿Qué? ¿Ha pensado que Tal vez Loba mantiene toda esta información en la cabeza?). Una vez más, aquí es donde se le va a enviar". Se trata de lo más cerca posible de una aprobación oficial del sitio por parte de Microsoft como se puede esperar.

INFORMACIÓN INTERNA

LA POTENCIA DEL PRIVILEGIO DE DEPURACIÓN

A diferencia de otros monitores de salida de depuración, incluido dbmon, el monitor debug-output de DebugView (www.sysinternals.com/dbgview.htm) requiere privilegios de administrador local para la ejecución, ya que instala un controlador de dispositivo que captura la salida de depuración en modo kernel. Como resultado, he recibido docenas de correos electrónicos de desarrolladores que se quejan de que su administración no les dará privilegios de administrador local, solo el privilegio depurar. El argumento dice que el privilegio Depurar está ahí por una razón y que todos los desarrolladores de aplicaciones deben desarrollar. Estos desarrolladores me piden que cambie DebugView para que solo instale el controlador si el usuario tiene privilegios de administrador y, de lo contrario, solo recopila la salida de depuración de Win32.

Estas solicitudes siempre me dan un resalte, porque lo que la administración que hace que el argumento Debug-privilege no se dé cuenta es que este privilegio abre la puerta a los privilegios de administrador local. Con el privilegio Depurar, un desarrollador puede hacer que un depurador se adjunte al proceso de autoridad de seguridad local (LSASS) y manipularlo para darles privilegios de administrador local en su siguiente inicio de sesión. O bien, pueden insertar código en cualquier proceso que se ejecute en la cuenta del sistema que agregaría su cuenta al grupo de administradores locales. Cuando se lo explico a los desarrolladores que se quejan, a veces responden que su administración no compra el argumento. Hasta ahora, no he tenido nada para que vuelvan a su administración para hacer su caso, pero una ola reciente de estos correos electrónicos me ha hecho tomar medidas.

LogonEx, una utilidad que puede descargar en www.sysinternals.com/logonex.zip muestra gráficamente el control del privilegio Depurar. LogonEx funciona en Windows NT y Windows 2000. Para mostrarla mejor, cree una cuenta que sea una cuenta de usuario normal, excepto con la adición del privilegio "Programas de depuración". Cierre la sesión e inicie sesión en esa cuenta y ejecute LogonEx. Necesitará los archivos de símbolos para msv1_0.dll para su instalación determinada (los desarrolladores suelen tener instalados símbolos del sistema), que LogonEx usa para buscar el punto de entrada de la función y aplicarla MsvpPasswordValidate revisiones. Una vez que LogonEx realiza su revisión, podrá iniciar sesión en el sistema con cualquier cuenta sin especificar una contraseña. Complete la demostración iniciando sesión como administrador y agregando la cuenta que creó al grupo de administradores locales.

LogonEx es solo un ejemplo de cómo el privilegio Depurar permite a un desarrollador tomar el control de un sistema, pero hay muchas otras. Deseo que LogonEx convenga a la administración de que no tiene sentido no proporcionar privilegios de administrador local a los desarrolladores (tenga en cuenta, sin embargo, que no estoy hablando de privilegios de administrador de dominio, que es otra historia que un administrador local se reasiste solo en su propio equipo, no en ningún otro, mientras que un administrador de dominio gobierna una red).

¿NUEVAS API EN WIN2K SP1?

Después de que muchos usuarios encontraron problemas con Service Pack (SP) NT 4 que provocaban nuevos errores, Microsoft adoptó una directiva de no incluir ninguna funcionalidad nueva en un SP con el fin de minimizar la posibilidad de que introdujesen nuevos problemas mientras se corrigen los antiguos. O así lo hemos pensado. Windows 2000 SP 1 se publicó recientemente y parece que no tiene ninguna funcionalidad nueva. Sin embargo, una inspección detallada de Ntoskrnl.exe, el archivo que contiene los componentes ejecutivos y kernel de Windows 2000 y Ntdll.dll, la biblioteca que contiene native API y loader, revela que una nueva API hizo su propia función en SP 1.

La nueva API consta de las siguientes funciones:

   RtlTraceDatabaseAdd
   RtlTraceDatabaseCreate
   RtlTraceDatabaseDestroy
   RtlTraceDatabaseEnumerate
   RtlTraceDatabaseFind
   RtlTraceDatabaseLock
   RtlTraceDatabaseUnlock
   RtlTraceDatabaseValidate

Los nombres de las funciones son bastante descriptivos, por lo que es claramente una API para registrar eventos. Un aspecto interesante de la API es que su implementación está duplicada en Ntdll y Ntoskrnl, lo que es diferente de otras API de Ntdll que llaman a los servicios de una implementación en Ntoskrnl.

El examen de la implementación de la API muestra que se usa de esta forma: una aplicación crea una base de datos de seguimiento, que se almacena en la memoria virtual de la aplicación, y agrega entradas a la base de datos. En algún momento, la aplicación puede enumerar el contenido de la base de datos y, cuando haya terminado con la base de datos, la eliminará. Por extraño que parezca que no hay una manera de eliminar entradas de base de datos.

¿Qué hace uso de esta nueva API? No hay nada instalado en mis características bastante Windows la instalación avanzada de 2000, por lo que no está claro que nada haga. Quizás se trata de una API de depuración que se incluyó accidentalmente en el código de versión de SP 1.

Publicado el miércoles, 30 de agosto de 2000 a las 19:07 p. m. por

[Archivo de boletines ^][ Volumen 2, Número 3][Volumen 2, Número 5 ]

[Archivo de boletines ^][ Volumen 2, Número 3][Volumen 2, Número 5 ]

The Systems Internals Newsletter Volume 2, Number 4

www.sysinternals.com
Copyright © 2000 Mark Russinvl