01 February 2012

Detective

Posts relating to the category tag "detective" are listed below.

01 February 2012

Web Application Exposed Surface

The exposed surface of an application is often called its "attack surface" or "defensive perimeter". I prefer "exposed surface" since the term is a little less judgemental and I think better implies why we need to be careful about it.

Remember that many security weaknesses come about due to unexpected functionality existing, as well as implementation and design flaws. The number of weaknesses is generally proportional to complexity, often measured as lines of code, or in the context of this discussion, this is often proportional to the amount of exposed surface. The exposed surface of a web application would be all the addresses (URLs), methods (e.g. POST, GET, HEAD) and parameters (form, query string, URL path, cookie and other headers) which the application responds to. Quite often this normally means every possible path and combination of parameters you can throw at it, even if the results is just a "not found" error message.

I was reminded to write about this topic, after reading Essential Attack Surface Management recently on Jim Bird's Building Real Software blog. I like his suggested approach of, well at least making a start, even if it is to focus only on the higher risk areas. Things like search engine friendly paths, dynamic URLs and URL rewriting will cause difficulties, but these are not insurmountable, especially if the site's path naming system can be considered, analysed and defined early in the development process. You might also want to focus on the authenticated parts of the application first.

If you can reduce the exposed surface, or even better limit it to only the necessary entry points, this is a huge step forward in defending your application. Your web application will be a combination of the necessary functionality for your business processes, combined with extra functionality (intended or otherwise), but it also needs to be able to handle other types of request gracefully (e.g. site icon, robots.txt file, missing page tests).

Venn diagram showing how authorised business functionality is a subset of the actual available functionality. There are also some other aspects that are necessary to handle gracefully.

The types of things which are commonly exposed, but should not be are:

  • Templates, used by other scripts
  • Included code, such as modules and libraries, never meant to be an entry point
  • Entry points meant for users with a different role or permissions (e.g. system initiated web services, customer-only content)
  • Unused, but included, functionality.

The exposed surface might also include the following things, but should really never exist in web-accessible locations:

  • Administrative interfaces
  • Logs
  • Temporary files
  • Configuration files such as encryption keys (yes really), and database connection strings
  • Backups
  • Default installation files, including help documentation
  • Old and archived scripts, test versions of a site, and other unused content.

Some entry points may only be meant for different groups of authenticated users, although there may be some overlap with unauthenticated public users. Every application will be different, but the following attempt to illustrate this for a public website with some functionality used exclusively by authenticated customers.

Venn diagram showing how public unauthenticated users should have access to a more reduced exposed surface Venn diagram showing how authenticated customers should have access to a different exposed surface

There are choices on where you enforce limitations on the inbound exposed surface. Some typical places are:

  • Network firewall
  • Traffic management device
  • Web application firewall (WAF), guard or other type of filter
  • HTTP proxy server
  • Web server
  • Application code.

No one of these is the best answer, and in many cases it is better to use a combination of more than one. For example on a web-based content management system, you might use a firewall to limit access from only known office IP addresses, use a web application firewall to limit requests to only well-formed HTTP requests and for known URLs and parameters, use the web server or proxy server to enforce the use of TLS, and let the application enforce the parameter type and range checks, before any business layer authorisation checks and input data validation occurs. The decisions might be different here if requests from internal users do not pass through all the same network devices.

You might even enforce the same restriction in more than one place. For example, you may only open port 443 through a network firewall, as well as having the web server listening solely on port 443, and also the application checking TLS is in use and setting the Secure flag on the session cookie.

But do remember, your web applications will probably also receive requests for entry point URLs that are not on your list, and which are not necessarily malicious, you may have forgotten to take into account, or include unexpected extra or missing parameters. You may want to ensure the web application responds in the correct manner for your own context and user base. Just blocking everything else may not be the correct option.

If you are in a situation of being unable to determine the exposed surface, there are approaches to use application profiling to create a good estimate. At its simplest this may be undertaking a web site crawl, but there has been some work in the area of using web application firewalls to build up a model of the site from actual usage. There is some good information on using ModSecurity for this, and I will try to summarise the information sources in a later post.

Another approach is to fingerprint the page content and monitor for changes such as defacement and cross-site scripting injection. Again, I will look out some references I have for this.

Posted on: 01 February 2012 at 12:31 hrs

Comments Comments (0) | Permalink | Send Send | Post to Twitter

10 January 2012

Report on Dynamic Application Security Testing (DAST) Solutions

Gartner published its report Magic Quadrant for Dynamic Application Security Testing (DAST) at the end of December.

The cover from Gartner's 'Magic Quadrant for Dynamic Application Security Testing' by Neil MacDonald and Joseph Feiman

The report is currently available to download free of charge if you register on Veracode's website. But it looks like if your turnover is less than $500 million, or say it is, the sales folk may be less likely to bother you.

The report is a useful summary, but I don't think it does enough to highlight the need for DAST to be just one part of a mix of activities contributing to a secure software development lifecycle, and therefore more secure applications. There's plenty of activity out there combining developer training, secure coding guidelines, vulnerability management, web application firewall dynamic patching and static analysis techniques too.

Posted on: 10 January 2012 at 08:48 hrs

Comments Comments (0) | Permalink | Send Send | Post to Twitter

03 January 2012

AppSec EU 2012 To Be Held in Athens

Happy new year. Planning your diary already? Looking for the best European conference for information about application security?

Photograph of a public display board beneath a sign saying 'Information' - the web browser on screen is displaying a Firefox error message because it cannot connect to the requested information resource address

Europe's premier application security conference, AppSec EU, is being held in Athens, Greece, from 10th to 13th July 2012. As in Stockholm two years ago, this event has a research theme, but there will be plenty of practical information, advice and application security training.

In May I participated in the OWASP Greece chapter Training Day in Athens and was overwhelmed by the level of attendance from the enthusiastic and knowledgeable development community. I am sure the sponsorship opportunities and tickets will be snapped up quickly.

AppSec EU Research 2012 is being hosted by the Department of Informatics and Telecommunications of the University of Athens.

Posted on: 03 January 2012 at 08:15 hrs

Comments Comments (0) | Permalink | Send Send | Post to Twitter

30 December 2011

Maritime Sector Cyber Security

Another report from the European Network and Information Security Agency (ENISA) highlights deficiencies in the maritime sector.

Photograph of a ship's bow berthed in Florida

The study's report Cyber Security Aspects in the Maritime Sector discusses that while there is increasing knowledge concerning physical security and crew safety, maritime cyber security awareness is low to non-existent. The situation is made worse by fragmented responsibilities, lack of incident information, and missing legislation in this area.

A relatively quick read if you are active in the sector.

Posted on: 30 December 2011 at 22:04 hrs

Comments Comments (0) | Permalink | Send Send | Post to Twitter

20 December 2011

Security Breach Guidance for European Telecommunications Operators

Last week, the European Network and Information Security Agency (ENISA) announced the publication of two guidance documents relating to Article 13a of the new telecommunications legislation (Directive 2009/140/EC) regarding security incidents and security controls.

Article 13a
Security and integrity
1. Member States shall ensure that undertakings provid­ing public communications networks or publicly available electronic communications services take appropriate techni­cal and organisational measures to appropriately manage the risks posed to security of networks and services. Having regard to the state of the art, these measures shall ensure a level of security appropriate to the risk presented. In particu­lar, measures shall be taken to prevent and minimise the impact of security incidents on users and interconnected networks.
2. Member States shall ensure that undertakings provid­ing public communications networks take all appropriate steps to guarantee the integrity of their networks, and thus ensure the continuity of supply of services provided over those networks.
3. Member States shall ensure that undertakings provid­ing public communications networks or publicly available electronic communications services notify the competent national regulatory authority of a breach of security or loss of integrity that has had a significant impact on the opera­tion of networks or services.
Where appropriate, the national regulatory authority con­cerned shall inform the national regulatory authorities in other Member States and the European Network and Infor­mation Security Agency (ENISA). The national regulatory authority concerned may inform the public or require the undertakings to do so, where it determines that disclosure of the breach is in the public interest.
Once a year, the national regulatory authority concerned shall submit a summary report to the Commission and ENISA on the notifications received and the action taken in accordance with this paragraph.
4. The Commission, taking the utmost account of the opinion of ENISA, may adopt appropriate technical imple­menting measures with a view to harmonising the measures referred to in paragraphs  1, 2, and  3, including measures defining the circumstances, format and procedures applicable to notification requirements. These technical implementing measures shall be based on European and international stan­dards to the greatest extent possible, and shall not prevent Member States from adopting additional requirements in order to pursue the objectives set out in paragraphs 1 and 2.
These implementing measures, designed to amend nonessential elements of this Directive by supplementing it, shall be adopted in accordance with the regulatory procedure with scrutiny referred to in Article 22(3).

I don't often quote legislation here, but I thought it was relatively short and provides the intent behind ENISA's guidance. ENISA has published two documents.

Technical Guideline on Incident Reporting provides guidance on the annual summary of significant issues and the notification of cross-border incidents. While most (all?) readers of this blog won't necessarily work in the telecommunications sector, I think the document is useful more widely for two aspects. It demonstrates the type of reporting which could be required if breach notification becomes a requirement for other sector or types of data (e.g. personal data)in the future. Also, the Section 5 on impact parameters and thresholds provides some insight into the continental and national viewpoint on the effects of security incidents.

The second document Technical Guideline on Minimum Security Measures defines the security controls national regulators need to consider when evaluating public communications networks. These are relatively high-level and are grouped into governance/risk management, human resources security, security of systems and facilities, operations management, incident management, business continuity management, and monitoring, auditing and testing. So a clear mapping to ISO27001/2/5 for information security and risk management, and BS 25999 for business continuity.

Posted on: 20 December 2011 at 06:47 hrs

Comments Comments (0) | Permalink | Send Send | Post to Twitter

06 December 2011

Registry of Cloud Computing Providers' Security Controls

This week, the Cloud Security Alliance has announced its new repository of security control self -assessments for cloud computing providers.

Part of the Security Response in the Context of CSA Cloud Control Matrix )CCM) security controls SA-03 through SA-04 for Microsoft's Office 365, published on the Cloud Security Alliance (CSA) Security, Trust and Assurance Registry (STAR)

The CSA Security, Trust and Assurance Registry (STAR) lists providers who have completed and submitted a Consensus Assessments Initiative Questionnaire (CAIQ) or Cloud Controls Matrix (CCM) response to indicate their compliance with CSA best practices.

Currently only two providers are listed, but more are in progress. This will be a very helpful resource for those seeking assurance about controls from suppliers, and potentially standardise the way cloud providers publish information about their security practices, simplifying procurement processes. If you are an IaaS, PaaS or SaaS provider, the existing submissions may help your own controls development or completion of an assessment.

There is more information in the detailed FAQ and LinkedIn forum.

Posted on: 06 December 2011 at 08:59 hrs

Comments Comments (0) | Permalink | Send Send | Post to Twitter

07 October 2011

Tuesday 25th is Leeds

I will be speaking about OWASP AppSensor's application-specific defenses at the next OWASP Leeds Chapter meeting on Tuesday 25th October.

Photograph of a warning sign on a building site's fence stating 'Caution Razor Wire'

But I am looking forward to hearing the other two speakers who are both very hard-working contributors to the information security community. Simon Bennetts will be talking about and demonstrating Zed Attack Proxy (ZAP), an intercepting HTTP proxy for developers, and Ryan Dewhurst will explain and show his WordPress security assessment tool WPScan.

The venue is just beside Leeds' main railway station, so it is easy to come along even if you are some distance away. The meeting is free to attend and everyone is welcome. Sign up via the link on the chapter's home page.

Posted on: 07 October 2011 at 18:30 hrs

Comments Comments (0) | Permalink | Send Send | Post to Twitter

27 September 2011

RSA Conference Europe 2011 Podcast

After an exciting trip to the United States, the very encouraging interest in OWASP AppSensor, and the productive AppSensor Summit, I'm back in the UK and catching up on a few things.

Photograph of a notice stating 'Danger - Entry by Public Prohibited'

While I was away, a podcast interview has been published in advance of RSA Conference Europe 2011 where I am speaking about application-specific defences. In the podcast I explained the concepts but during my presentation will discuss specifications, requirements for procurement as well as building application-specific defences into your own development practices.

If you want to find out more, please come along to the Windsor Suite at RSA Conference Europe on 13th October at 13:00 hrs.

Posted on: 27 September 2011 at 08:38 hrs

Comments Comments (0) | Permalink | Send Send | Post to Twitter

24 September 2011

AppSec USA 2011 - Part 2

Following the busy Thursday, I returned to the Minneapolis Convention Centre on Friday.

Photograph of signage outsiee the Minneapolis Convention centre stating 'Welcome OWASP AppSec USA 2011 Conference Sept 20-23' above the time and temperature

I began the second day of AppSec USA 2011 on the OWASP track, where I was speaking in a session shared with Michael Coates.

Photograph of Michael Coates speaking at AppSec USA 2011 in Minneapolis

Michael described the objectives and current content of the practical OWASP cheat sheet series of documents, which cover the most common web application security issues developers come across and who need accurate, and up-to-date information. The relatively concise cheat sheets are undergoing review, and three further cheat sheets (HTML 5, password storage and web services) are in progress. He also said the full set of cheat sheets are likely to be produced as a single book, as well as being freely accessible on the OWASP wiki (where all these are currently located and available). There was some useful feedback from the audience about the need for another tier of 1-2 page lists/summaries, and that all the cheat sheets should be formatted and structured in an indentical style where possible. Another delegate asked if all the details could be incorporated into the OWASP development guide. And as a last question, one person asked if issues relating to mutual authentication might be addressed.

I then described a different sort of strategy by OWASP, the OWASP Application Security Codes of Conduct project. I adopted these documents which were largely produced during the summit in Portugal earlier this year, to consolidate the work, produce release-quality documents and then promote their adoption. If you remember, these describe what OWASP believes other types of organization could do to support OWASP's mission. While these are aspirational (by OWASP), they do define some minimal normative behaviour, and optional additional recommendations, for government bodies, educational institutions, standards groups, trade organisations and certifying bodies. Excellent feedback from the audience included whether there was a need for prioritised approach for organisations that might fall into two target groups (e.g. educational institution and government body). The audience also asked about the specific requirements for educational institutions and the practicality of achieving them. I will revirew these ideas and post some suggestions to the project's mailing list.

Photograph of one of Ryan Stinson's slides at AppSec USA 2011 in Minneapolis

Ryan Stinson provided an introduction to Common Attack Pattern Enumeration and Classification (CAPEC), and how this can be used to help target resources in an implementation agnostic through typical secure software development life cycles (SDLCs). This is easiest when threat modelling is used so that threats can be linked with attacks listed in CAPEC. It provides a way to cross-reference data from different points in the secure SDLC such as requirements, design, development, code review, QA, testing and operations. Switching to Common Weakness Enumeration (CWE), Ryan explained how this describes an overall style of a vulnerability and what challenges developers face relating to these. The taxonomy is extensive and fine-grained. Ryan uses this in his company to link vulnerabilities found during their engagements with the matching CWE issue. This provides additional centralised support resources and demonstrates the relevance to clients.

Photograph of Mike Ware speaking at AppSec USA 2011 in Minneapolis

After a short break, I continued my pursuit of good threat modelling guidance and attended Mike Ware's session on this topic. He explained the need to keep threat modelling simple and described a process built around identifying who, what, where & how, combined with the impact and mitigations. The suggested process needs to involve a range of stakeholders which Mike referred to as the builders (e.g developers, suppliers), gluers (e.g. enterprise architects, CTO, shared service providers), owners (e.g. system, business, data), defenders (e.g. infrastructure, operations), and breakers (e.g. security teams, external penetration testers). The eight-part method includes diagramming the software architecture, enumerating the attack surface, documenting threats, illuminating assets, illuminating trust boundaries, and mitigation. A key take-away was that if you don't have good design information, don't attempt to begin threat modelling.

Photograph of Moxie Marlinspike speaking during Friday's lunch at AppSec USA 2011 in Minneapolis

During lunch Moxie Marlinspike described the problems with trust using the internet, and in particular the difficulty of proving authenticity using SSL. His approachable presentation style won over the audience while he was discussing what might be called a complete failure in the current trust model that relieas on certificate authorities, domain name registrars and top level domain owners. He said that trust agility needs to have the ability for trust decisions to be reversed, and for users to be able to decide where they can place their trust. He described a previous concept called Perspectives but this had problems with completeness, privacy and responsiveness. Moxie went on to discuss his own inititiative called Convergence which could be a new authenticity system for SSL. It uses local caching and notary bounce to avoid the problems Perspectives had, and is designed with future extensibility buit in. There is a plugin for Firefox and this doesn't break the existing model — there is no need for changes on individual (web) servers. I need to check this out further.

Photograph of Adam Meyers speaking at AppSec USA 2011 in Minneapolis

After lunch I returned to the software assurance track to attend Adam Meyers' presentation on assessing threats to mobile computing. He described the milestones facilitating the current wave of mobile computing. He said that mobile security concerns relate to all the components (e.g. device, networks operating system, third party applications, browsers & web sites, enterprise applications), limitations (OS API, 3rd party application validation, carrier device authentication, data encryption, mandatory security controls, security updates). He described protections (and lack of) for data at rest, data in motion and voice for each operating system, and the additional personal security concerns, perimeter issues and data ownership concerns relating to mobile computing. Adam went on to explain detection and mitigation concerns due to issues like devices not always remianing on enterprise infrastructure, klack of real auditing for installed applications, difficulty in tracking user behaviour and difficulty in removing malicious code. He then identified the mobile computing attack surface and his most important recommendations for mobile software developers.

Photograph of Charles Schmidt speaking at AppSec USA 2011 in Minneapolis

Continuing, Charles Schmidt described how to utilise Security Content Automation Protocol (SCAP). He said that even if you have an application with no flaws, no weaknesses and no bugs, it's still not secure. This is because deployment and operational management also matter. Perfect engineering makes an application securable, not secure. He said that documentation is a complete guide to an application, whereas guidance is a set of suggestions for how to configure it for specific use cases. The idea is that there can be automated security guidance, in a format that allows automated assessment of meeting these in the actual environment. This can provide the specific deviations to be identified that can then be assessed, and mitigated as necessary. SCAP is an open standard being used by the US government and others, for this automated guidance. The seven components are connected together by SCAP are:

  • Common Configuration Enumeration (CCE) for configurable items in software
  • Common Vulnerabilities and Exposures (CVE) for public vulnerabilities in public software
  • Common Platform Enumeration (CPE) for identifying software & hardware items
  • Common Vulnerability Scoring System (CVSS) to rank vulnerabilities on its likely danger
  • Extensible Configuration Checklist Description Format (XCCDF) defining a standard format for security guidance that allow tailoring structures to customise recommendations and assessments
  • Open Vulnerability Assessment Language (OVAL) format to express assertions about system state
  • Open Checklist Interactive Language (OCIL) standard format for user questionnaires.

Apart from SCAP's well-known uses for vulnerability management, Charles described a use case for an off-the-shelf software package. The guidance for the application and the underlying infrastructure can be built using XCCDF, with OVAL for the low-lying technical checks and OCIL for the non-technical checks. If it is not a public application, CCE and CPE could be used for further annotation. The software acquirers can then use this for initial configuration and ongoing assessment. In another use case for inventory management, users can use the standardised format to be alerted about rogue installations and outdated versions.

Photograph of Ryan Barnett speaking at AppSec USA 2011 in Minneapolis

For the final session of the day I returned to the OWASP track to listen to Ryan Barnett discussing how the ModSecurity Core Rule Set can be extended to implement some aspects of detection and response from AppSensor. After a brief introduction to the concepts, his dynamic presentation highlighted the pros and cons of building defense logic external to the application, and then how experimental rules have been created for the CRS for many detection points. There are some ideas there I will need to investigate, and make sure I write up for the next version of the AppSensor book.

The conference closed with a final recap by members of the board and the local organising committee. Vendors' prizes were distributed and thanks given to the volunteer organising team in Minneapolis. Yes, the whole week had been run fantastically well, and I hadn't heard any complaints. With over 540 delegates, that's excellent work. A high standard for Austin TX to follow next year.

The next global OWASP events are AppSec Latin America October 4th-7th in Porto Alegre, Brazil, and AppSec Asia November 8th-11th in Beijing, China. The next European AppSec conference will be held in Athens during July 2012.

All presentations will be available on the OWASP AppSec USA web page.

Posted on: 24 September 2011 at 19:12 hrs

Comments Comments (0) | Permalink | Send Send | Post to Twitter

22 September 2011

AppSec USA 2011 - Part 1

The first keynote speech at AppSec USA 2011 was given by Mark Curphey, a founder of OWASP.

Photograph of the opening keynote speech at AppSec USA 2011 with Mark Curphey

He described OWASP's beginnings in 2001, how the organisation has grown and become the success story it is today. And that success is completely about the people and its open principles. Despite having contributions from all round the world, he described that connecting people in person together, face-to-face, is critical and thus how important the local chapters, local events and regional conferences are. He included a compilation of short videos from chapters around the world. He also saluted many of the exceptional people involved over ten years, and how he believes the application security community needs to keep instead with the trends in the developer community.

Photograph of the Andres Riancho speaking at AppSec USA 2011

The talks were spread over four parallel tracks. Following the morning break, I attended a talk by Andres Riancho on web application security testing payloads. Andres described the lack of post exploitation techniques available in web penetration testing tools. If these do exist, they are mainly in the area of buffer overflows rather than for web exploits where there is often much reduced capability. He showed how W3AF has been extended to build a number of post exploitation payloads, mainly in Linux/Apache HTTP space. He also demonstrated how a custom payload could be used to download an web site's source code where there is a file read vulnerability, and then with a proof-of-concept static code analysis tool, examine that code to look for additional vulnerabilities that may be exploitable to achieve file write capabilities, and thus file execution. This combination of blackbox penetration testing and static-code analysis is a fascinating and useful concept.

Photograph of the Ryan Smith speaking at AppSec USA 2011

I then attended a presentation on the mobile track by Ryan Smith about a distributed framework for performing large-scale android application security analysis called STAAF (Scalable Tailored App Analysis Framework). He described how there are many Android app analysis tools, but these are mostly designed to analyse a single app at a time. STAAF uses these as modules but has additional efficiency, scalability and data analysis capabilities. Ryan described the low barrier to entry for Android developers and the problem with third-party market places from where some users will download and install apps. The mobile devices treat all the apps the same. For users there is no distinction between core apps and third party applications and they can only make decisions based on trust of the source and the permissions requested. In practice this means malicious apps are widely available and downloaded by unsuspecting users. STAAF was built to scale across multiple servers to process scanning requests with centralised long-term storage and results reporting. Modules include extraction of permission requirements, libraries used, referenced static URLs, methods, manifest and Dex bytecode. Efficiencies are obtained by caching intermediate results, data conversion to ASCII, Smali & Java and storing the control flow graph from the Dex. Additionally common libraries and shared resources are not re-processed every time. The framework is bound by CPU power due to database activity, but it appears to have the potential to scan 50,000 apps in less than 8 hours with a relatively small number of nodes.

Photograph of the Scott Matsumoto speaking at AppSec USA 2011

Next I listed to Scott Matsumoto's presentation on threat modelling for cloud-based services and applications. Threat modelling can be complex, and therefore I am always interested to hear about different approaches. Scott used the NIST Cloud Definition Framework to describe how Infrastructure as a Service (IaaS) and Platform as a Service (PaaS) affect application design, deployment and operation. He discussed the use of Amazon Web Services (AWS) S3 as an example change to an application's architecture to identify the assets, threats and risks of using a cloud-based approach. He described the risks unique to cloud-based applications as well as those that are often very relevant, but are common to other architectures too. There is a related presentation tomorrow, by one of Scott's colleagues, on simplifying threat modelling.

Photograph of the OWASP board presentation over lunch at AppSec USA 2011

During lunch the OWASP Board described the current healthy status of participation, membership and supporters, chapters, conferences and project activity. Michael Coates is now the new OWASP chair as Jeff Williams steps down after 8 years. The board also announced awards for people who had made special efforts during the previous year,and Michael Coates thanked Jeff Williams for his previous tenure.

Photograph of the Dan Cornell speaking at AppSec USA 2011

After lunch, Dan Cornell described a technique to reduce the exposure time between vulnerability identification to short-term remediation. He explained that when code changes occur, this can lead to vulnerabilities where potential solutions might include web application firewalls, finding all the vulnerabilities and fixing before deployment, or avoiding vulnerabilities in the first place. These all have challenges and problems. His suggested approach for some classes of vulnerability such as injection, is to implement a process to automatically identify new code (e.g. change control processes, file system and network monitoring), analyse this code for vulnerabilities (e.g. using normalised data from manual and automated code review and vulnerability scanning tools) and automatically block traffic that is being targeted to exploit these using virtual patching using IDS/IPS/WAF systems. Once the rules are created, the alerts can be mapped back to the vulnerabilities to provide insight into what attackers have discovered and what they are interested in. These techniques may be of use where you have little or no control over the deployed code, or where it takes a,long time to create and deploy security fixes.

Photograph of the Kevin Stadmeyer and Garret Held speaking at AppSec USA 2011

I returned to the mobile track to listen to Kevin Stadmeyer and Garret Held give an information-rich presentation on the security issues relating to iPhone applications, and how to develop these applications more securely. They described the secure storage of credentials and other data, inadvertent local storage, caching, and client-side sanitisation. Following a description of the most common issues, Kevin and Garret defined some secure coding practices to protect against buffer overflows, format string attacks, race conditions, and measures to take server side and to secure communications.

Photograph of the Scott Matsumoto speaking at AppSec USA 2011

Jon McCoy demonstrated the use of tools and methodologies to verify security in C# .NET applications based on legacy tools and his own research. He used his tool GrayWolf to decompile demonstration executables & DLLs and GrayDragon to attack a test application while running, by modifying the memory. He described that once you have access to the source code, you can examine the protection measures and have much more ability to identify vulnerabilities and thus validate information assurance of deployed code. It is also possible to modify the code or insert calls to your own procedures. For example, he described a range of methods he has used to circumvent cryptographic controls using these tools. He went on to describe measures such as code signing, package encryptors and obfuscation which are used to prevent this reverse engineering, but also described how these techniques can be ineffective or lead to additional vulnerabilities.

The talks continue tomorrow. All presentations will be available on the OWASP AppSec USA web page.

Posted on: 22 September 2011 at 19:24 hrs

Comments Comments (0) | Permalink | Send Send | Post to Twitter

More Entries

Detective : Web Security, Usability and Design
http://www.clerkendweller.com/detective
ISO/IEC 18004:2006 QR code for http://clerkendweller.com

Page http://www.clerkendweller.com/detective
Requested by 38.107.179.220 on Saturday, 4 February 2012 at 21:17 hrs (London date/time)

Please read our terms of use and obtain professional advice before undertaking any actions based on the opinions, suggestions and generic guidance presented here. Your organisation's situation will be unique and all practices and controls need to be assessed with consideration of your own business context.

Terms of use http://www.clerkendweller.com/page/terms
Privacy statement http://www.clerkendweller.com/page/privacy
© 2008-2012 clerkendweller.com