Gadgets para Blogger

Saltear autorizaciones en SAP - parte IV

Seguimos con la seguidilla de hacks para SAP. Después de haber leído los capítulos I, II y III, llega el momento de que vean este capítulo donde verán   Muchas veces se encontrarán en situaciones en las que necesitan modificar o agregar campos en una tabla y (lógicamente) carecen de autorización para hacerlo. Algunos se preguntarán en qué caso pueden requerir algo así y la respuesta está inclusive en varias notas de SAP, porque allí nos piden que creemos, borremos o modifiquemos una entrada y al no tener los permisos eso se vuelve un trastorno.

Modificando los datos de una tabla SAP

Hasta no hace mucho la manera más simple de modificar una tabla en SAP era ingresando a la transacción SE16N y poner en la zona de ingreso de transacciones &SAP_EDIT y listo tenían disponible la modificación de la tabla. Eso se cumplía en prácticamente cualquier R/3 - ECC. 

También podían poner /h para activar el debugguer de la transacción y cambiar en la variable CODE el valor SHOW por EDIT o INSR y listo.


Esa forma pueden probarla, pero si tienen un sistema nuevo es muy probable que eso no lo pueda hacer.

Ahora se complicó un poco más y no solo extendieron el debug a realizar sino que los valores no son tan intuitivos.

Ahora los pasos son los siguientes:

1- Ingreso a la transacción SE16
2- Selecciono la tabla a modificar y visualizo los datos.
3- Marco el registro que quiero modificar.
4- Activo el modo debug poniendo /H en la caja de diálogo.
5- Presiono el botón Show (símbolo de los anteojos) 
6- Se abre la pantalla de debug.
7- Debemos llegar en el debug hasta la siguiente sentencia:

Buscar sentencia l_okcode = ok_code







8- Por defecto les aparecerá el siguietne valor:


Dependiendo de lo que quieran realizar deberán poner los siguientes valores:

Para insertar/Actualizar = ANVO
Para borrar                  = DEL5

Aclaración importante: 
Desde todoSAP promovemos el aprendizaje pero no nos hacemos responsables por el buen o mal uso que le den los usuarios a estas técnicas.

Saltear autorizaciones en SAP - parte III

Después de mucho tiempo vuelvo a escribir sobre como saltear autorizaciones SAP (skip sap authorization). Hace un tiempo había escrito 2 artículos explicando como saltear de manera básica algunas autorizaciones de SAP, (saltando autorizaciones parte II y saltear autorizaciones parte I) pero obviamente SAP y los administradores van aprendiendo y cada vez van limitando más los accesos para evitar vulnerabilidades, pero siempre por el momento siguen existiendo muchas maneras de saltar autorizaciones.

Accediendo a transacciones SAP sin autorización

En el primer capítulo habíamos menciona utilizar la función RS_HDSYS_CALL_TC_VARIANT, pero como comentaba inicialmente SAP la fue complicando y ya no es siempre útil esta transacción. Esto se debe a que si ustedes debuguean el acceso a la transacción llega un momento donde ingresa a un método que no puede ser debugueado y en el cual no tendrán la posibilidad de cambiar ningún tipo de valor, por lo tanto tendrán un inevitable mensaje de No tiene autorización a la transacción XXXX.

No contento con eso comencé a investigar hasta que di en la tecla con una nueva función llamada CALL_TRANSACTION_AUTH, al menos por ahora no encontré ninguna transacción que no pueda ejecutar con dicha función

Esa transacción sirve para conocer si un usuario tiene autorización o no a una transacción pero esconde una sentencia que permite que puedas saltear dicha autorización.
Si observan el código muestra lo siguiente:

FUNCTION CALL_TRANSACTION_AUTH .
*"----------------------------------------------------------------------
*"*"Lokale Schnittstelle:
*"       IMPORTING
*"             VALUE(TCODE) LIKE  SY-TCODE
*"       EXCEPTIONS
*"              NOT_AUTHORIZED
*"----------------------------------------------------------------------
  AUTHORITY-CHECK OBJECT 'S_TCODE'
           ID 'TCD' FIELD TCODE.
  IF SY-SUBRC NE 0.
    MESSAGE I077(S#) WITH TCODE RAISING NOT_AUTHORIZED.
  ENDIF.
  CALL TRANSACTION TCODE.
ENDFUNCTION.

Por lo tanto es tan simple como cambiar sy-subrc a 0 y habrán podido acceder.

Aclaración importante: 
Desde todoSAP promovemos el aprendizaje pero no nos hacemos responsables por el buen o mal uso que le den los usuarios a estas técnicas.

Arrancar una instancia de SAP R3

SAP BASIS
SAP BASIS


El script startsap llama al programa SAPSTART.

El programa SAPSTART lee el START PROFILE y arranca los componentes y/o servicios de R/3 en la lista que se encuentra en /usr/sap//SYS/profile/START__

En una instancia central, SAPSTART arranca el servidor de mensajes, el dispatcher, el recolector y el remitente.

En una instancia de diálogo, sólo el remitente y el dispatcher se arrancan. El recolector y el remitente se utlilizan para implementar el log central del Sistema R/3.

El dispatcher bifurca y crea procesos menores:
Los procesos de trabajo (dialog, background, spool, update, . . .) se crean de acuerdo con la información en los perfiles /usr/sap//SYS/profile/__ y /usr/sap//SYS/profile/DEFAULT.PFL. 
El lector de entrada. Este no depende de los perfiles y siempre se arranca.

Todos los procesos de trabajo excepto el lector de entrada se conectan con la base de datos
Related Posts Plugin for WordPress, Blogger...