Www.SecurityXploded.com. Disclaimer The Content, Demonstration, Source Code and Programs presented here is "AS IS" without any warranty or conditions.

Slides:



Advertisements
Similar presentations
Design Validation CSCI 5801: Software Engineering.
Advertisements

Sample chapter from Reverse Engineering Course.
Lots of content, the hope is that they will be used as reference material after the presentation.
Module R2 CS450. Next Week R1 is due next Friday ▫Bring manuals in a binder - make sure to have a cover page with group number, module, and date. You.
Utilizing the GDB debugger to analyze programs Background and application.
Operating System Security : David Phillips A Study of Windows Rootkits.
Disclaimer The Content, Demonstration, Source Code and Programs presented here is "AS IS" without any warranty or conditions.
RIVERSIDE RESEARCH INSTITUTE Helikaon Linux Debugger: A Stealthy Custom Debugger For Linux Jason Raber, Team Lead - Reverse Engineer.
Nullcon Goa 2010http://nullcon.net Intelligent Debugging and in-memory Fuzzers By Vishwas Sharma Amandeep Bharti Rohan Thakur.
Disclaimer The Content, Demonstration, Source Code and Programs presented here is "AS IS" without any warranty or conditions.
Disclaimer The Content, Demonstration, Source Code and Programs presented here is "AS IS" without any warranty or conditions.
Disclaimer The Content, Demonstration, Source Code and Programs presented here is "AS IS" without any warranty or conditions.
Disclaimer The Content, Demonstration, Source Code and Programs presented here is "AS IS" without any warranty or conditions.
Introduction to Java Lab CS110A – Lab Section 004 Instructor: Duo Wei.
CS 225 Lab #2 - Pointers, Copy Constructors, Destructors, and DDD.
Simple Web SQLite Manager/Form/Report
Defeating public exploit protections (EMET v5.2 and more)
Disclaimer The Content, Demonstration, Source Code and Programs presented here is "AS IS" without any warranty or conditions.
Introduction to Android Swapnil Pathak Advanced Malware Analysis Training Series.
OBJECT MODULE FORMATS. The object module format we have employed as an educational device is called OMF (relocatable object format). It’s one of the earliest.
JavaScript & jQuery the missing manual Chapter 11
L18 - Studio 5000® and Logix Advanced Lab
Disclaimer The Content, Demonstration, Source Code and Programs presented here is "AS IS" without any warranty or conditions.
Disclaimer The Content, Demonstration, Source Code and Programs presented here is "AS IS" without any warranty or conditions.
Microsoft Office Project Desktop Development Marcel Parent Program Manager Project Microsoft Corporation.
Disclaimer The Content, Demonstration, Source Code and Programs presented here is "AS IS" without any warranty or conditions.
Disclaimer The Content, Demonstration, Source Code and Programs presented here is "AS IS" without any warranty or conditions.
Part 3: Advanced Dynamic Analysis Chapter 8: Debugging.
C O M P U T E R G R A P H I C S Jie chen Computer graphic -- OpenGL Howto.
Disclaimer The Content, Demonstration, Source Code and Programs presented here is "AS IS" without any warranty or conditions.
Monnappa KA  Info Security Cisco  Member of SecurityXploded  Reverse Engineering, Malware Analysis, Memory Forensics 
Disclaimer The Content, Demonstration, Source Code and Programs presented here is "AS IS" without any warranty or conditions.
Python From the book “Think Python”
Operating Systems Session 1. Contact details TA: Alexander(Sasha) Apartsin ◦ ◦ Office hours: Homepage:
Embedded Software SKKU 14 1 Sungkyunkwan University Tizen v2.3 Application Profiling & Debugging.
Disclaimer The Content, Demonstration, Source Code and Programs presented here is "AS IS" without any warranty or conditions.
Disclaimer The Content, Demonstration, Source Code and Programs presented here is "AS IS" without any warranty or conditions.
Presented by IBM developer Works ibm.com/developerworks/ 2006 January – April © 2006 IBM Corporation. Making the most of The Eclipse debugger.
Operating Systems Session 1. Contact details TA: Alexander(Sasha) Apartsin ◦ ◦ Office hours: TA: Sasha Alperovich.
Topic 1 Object Oriented Programming. 1-2 Objectives To review the concepts and terminology of object-oriented programming To discuss some features of.
Eclipse 24-Apr-17.
SilkTest 2008 R2 SP1: Silk4J Introduction. ConfidentialCopyright © 2008 Borland Software Corporation. 2 What is Silk4J? Silk4J enables you to create functional.
Amit Malik SecurityXploded Research Group FireEye Labs.
COP 3813 Intro to Internet Computing Prof. Roy Levow Lecture 1.
Dissecting the Windows CE Build Process James Y. Wilson Principal Engineer, Windows Embedded MVP CalAmp, Inc. James Y. Wilson Principal Engineer, Windows.
Disclaimer The Content, Demonstration, Source Code and Programs presented here is "AS IS" without any warranty or conditions.
Homework tar file Download your course tarball from web page – Named using your PSU ID – Chapter labeled for each binary.
Manage Directories and Files in Linux Part 2. 2 Identify File Types in the Linux System The file types in Linux referred to as normal files and directories.
Plug-in Architectures Presented by Truc Nguyen. What’s a plug-in? “a type of program that tightly integrates with a larger application to add a special.
Software mechanism of Genesis --- a cheating software for Warcraft3 Yang Chen Wen Sun.
Lecture 11 Example Rootkit. Intel internship Intel CTG (Corporate Technology Group) –Advanced research & development –System integrity services using.
: Information Retrieval อาจารย์ ธีภากรณ์ นฤมาณนลิณี
Text2PTO: Modernizing Patent Application Filing A Proposal for Submitting Text Applications to the USPTO.
Introduction to ASP.NET, Second Edition2 Chapter Objectives.
© 2013 IBM Corporation IBM UrbanCode Deploy v6.0 Support Enablement Training Jenkins plug-in 1 November 2013.
Copyright © 2015 Rockwell Automation, Inc. All Rights Reserved. PUBLIC PUBLIC CO900H L19 - Studio 5000® and Logix Advanced Lab.
Python’s Modules Noah Black.
Data Virtualization Tutorial: Introduction to SQL Script
USING PYTHON to Automate data management tasks
Chapter 1. Basic Static Techniques
Data Handlers.
This presentation document has been prepared by Vault Intelligence Limited (“Vault") and is intended for off line demonstration, presentation and educational.
Binary voyeurism A decent overview.
Reverse engineering through full system simulations
This is where R scripts will load
CSC 497/583 Advanced Topics in Computer Security
Carthage ios 8 onwards Dependency manager that streamlines the process of integrating the libraries into the project.
CSC 497/583 Advanced Topics in Computer Security
Setup a VM to use for analyzing malware
This presentation document has been prepared by Vault Intelligence Limited (“Vault") and is intended for off line demonstration, presentation and educational.
Presentation transcript:

Disclaimer The Content, Demonstration, Source Code and Programs presented here is "AS IS" without any warranty or conditions of any kind. Also the views/ideas/knowledge expressed here are solely of the trainer’s only and nothing to do with the company or the organization in which the trainer is currently working. However in no circumstances neither the Trainer nor SecurityXploded is responsible for any damage or loss caused due to use or misuse of the information presented here.

Acknowledgement  Special thanks to Null community for their extended support and co-operation.  Special thanks to ThoughtWorks for the beautiful venue.  Thanks to all the trainers who have devoted their precious time and countless hours to make it happen.

Advanced Malware Analysis Training This presentation is part of our Advanced Malware Analysis Training program. Currently it is delivered only during our local meets for FREE of cost. For complete details of this course, visit our Security Training page.Security Training page

Who am I? Harsimran Walia  Member, SecurityXploded  Research Scientist, McAfee Labs  Reversing, Malware Analysis, Exploit Analysis/Development etc.  Personal site:   Twitter: b44nz0r

Content  Automation Python scripts Use of modules  Tools/Modules discussed PEfile PyDbg IDAPython

PEfile  Python module to read and work with Portable Executable (PE) files  pefile requires understanding of the layout of a PE file (already covered)  Tasks that pefile makes possible are: Modifying and writing back to the PE image Header Inspection Sections analysis Retrieving data Warnings for suspicious and malformed values Packer detection with PEiD’s signatures

Pefile (hands-on)  Load a PE (create an instance)  Reading important PE header attributes  Modifying values All PE instance values support assignment followed by a call to write function to write the modified exe to system

Pefile (hands-on)  PE sections – fetching detail about sections  File Info Output

Pefile (hands-on)  Type of file (exe/dll/driver)  List of imported dlls and imported functions

Pydbg  Open Source Python debugger  Developed by Pedram Amini as the main component of PaiMei framework  It uses user-defined callback functions  These functions can implement actions to take on hitting a breakpoint, exception etc  Upon execution of the callback function the control is passed back to pydbg to execute the program normally

Pydbg installation  Download or git clone:  Pre-reqs Python 2.7 c-types python library  Copy the pydbg files to Python-2.7\Lib\site-packages\pydbg  pydasm.pyd is compiled for Python 2.6, lets fix this!  Open pydasm.pyd in any hex-editor(010 etc) and search python Change python26.dll to python27.dll Save and replace with original

Pydbg (hands-on) Import required pydbg modules and struct Look for process to debug Attach debugger to process Set breakpoint on function entry address Attach a breakpoint handler Breakpoint handler for CreateFileA Extract the parameter from the stack = filename Breakpoint handler for CreateFileW

IDA Python  An IDA Pro plugin  Integrates Python, allowing scripts to run in IDA Pro  IDAPython Scripts have access to IDA Plugin API, IDC and all modules available for Python

Installation  Download the plugin from  Match the IDAPro and python version before downloading  Copy the ''python'' directory from the extracted plugin to the IDA Pro install directory (%IDADIR%)  Copy the plugin executable to ''%IDADIR%\plugins\''

Hands-on  Utility functions ScreenEA() ○ Obtains the address of where your cursor is currently positioned on the IDA screen. GetInputFileMD5() ○ Returns the MD5 hash of the binary loaded in IDA, which is useful for tracking changes in the binary  Functions Functions( long StartAddress, long EndAddress ) ○ Returns a list of all function start addresses contained between StartAddress and EndAddress. LocByName( string FunctionName ) ○ Returns the address of a function based on its name. GetFunctionName( long Address ) ○ Given an address, returns the name of the function the address belongs to.

Hands-on  Try running on war-ftpd.exe

Demo..  ExeScan  Malpimp

Reference Complete Reference Guide for Advanced Malware Analysis Training [Include links for all the Demos & Tools]

Thank You !