Senior Security Researcher Podalirius Labs
Remi Gascou (@podalirius_) is a Microsoft Security MVP and Senior offensive security consultant in France, where he performs internal and external penetration tests for various clients. Passionate about security research and playing with undocumented mechanisms, he is particularly interested in Windows internals and Active Directory. Along with his research, Remi has contributed to many open source tools including crackmapexec, impacket and co-authored Get-GPPPassword, smartbrute and pyWhisker. He also created FindUncommonShares, LDAPmonitor and Coercer.
Graph-oriented approach for SSTI payload optimization: Usecase of jinja2
When attacking Python-based web applications, we often need to find a way to execute commands on the server and escape from the application context. This goal can be achieved by leveraging vulnerabilities such as Server-Side Template Injection (SSTI) or Python format string injections. In these two cases we are able to manipulate Python objects as an attacker, but how can we find the shortest and most optimized payloads to achieve Remote Code Execution in this context?
In the first part of this talk, we will remind basics of python internals about objects, properties and variables. We will then leverage Python introspection capabilities to create paths to high value targets by chaining objects. We will then apply common graph exploration algorithms such as breadth first search or depth first search in order to find the shortest paths to high value targets to achieve Remote Code Execution (RCE).
In the second part, I’ll present a research tool called objectwalker allowing to automatically find paths to modules, functions, or high value targets in python objects. This tool can be used locally by an attacker to audit the security of the injection point in the python application, and find direct paths to high value targets such as the os module. After that the attacker can use the found payloads to achieve one click Remote Code Execution on the target, with no more necessary fuzzing on the real target.
Finally, we’ll go through two example use cases to demonstrate where this technique can be applied, with examples of usage of objectwalker. The first use case is searching for the shortest payload to achieve Remote Code Execution (RCE) in a Server-Side Template Injection (SSTI) in the Jinja2 template engine. The second use case is leveraging a format string vulnerability in Python in order to leak a secret configuration key defined in the settings of the web framework Django.
Are you the next cyber security superstar?
Ready for this year's presentations?
By registering you will unlock access to 60+ speakers and two full days with cyber security news & showcases from worldwide leaders.
Sponsors & Partners
They help us make this conference possible.
Orange Romania is the leader of the local telecom market and part of the Orange Group, one of the largest global telecommunications operators, connecting hundreds of millions of customers worldwide. With over 11 million customers and an annual turnover exceeding 1.5 billion euros, Orange Romania connects 1 in 2 Romanians and offers an extensive range of communication solutions to its customers, both individual users and companies, from basic services up to complete voice services, fixed and mobile data, TV services or smart home services, but also mobile financial services. Orange is also a leader in innovation investing yearly over 200 million euros in network infrastructure and R&D initiatives in Romania. In the past 3 years Orange has launched two 5G Labs in Bucharest and Iasi, that aim to support researchers, startups and companies to test their 5G solutions in advance. In addition, Orange is a long-term supporter of the startup ecosystem through the Orange Fab accelerator program designed to support entrepreneurs in the development of innovative products and their distribution locally and internationally.
Orange Services was created in 2013 and is a 100% owned subsidiary of Orange Group. As a technology services company, our DNA is in IT, but our teams also work in other domains including mobile networks and a number of commercial and business functions. Orange Services is one of the largest technology hubs in the Orange Group, working internationally for both Orange corporate functions and country operations. Through a unique combination of cutting edge know-how and expertise, our teams provide a broad range of services: development and supervision of IT services in domains such as Big Data, Cloud, M2M, IoT, TV, Connected Objects; design and development of IT infrastructure and desktop solutions; testing & planning for mobile networks; implementation of supply chain solutions and also improvement of commercial & business performance including BI, CRM, Analytics, Digital learning and Customer Care. Visit us on LinkedIn.