Protecting software and system integrity Course

You have gained a solid foundation for implementing the most common security controls in iOS app development. You can now finish up your skill set by learning how to maintain application and device integrity.

1 hour, 50 minutes

Course description

No study of secure application development would be complete without also understanding how to monitor your code and the platform it runs on. In this final course, you will consider the risks of integrating code you did not write into your app. You will learn how to handle and log errors generated within your app. You will also learn about the many types of tests your app should go through before it is released to users. You will see the risks of running your app on a jailbroken device, and how your app can detect if it has been installed on such a device. You will also learn where to go to continue your security education, and finish up with a review of key points from this path.



Video - 00:01:00

In this segment, we wrap up and say farewell.
Secure iOS coding roundup

Video - 00:09:00

In this segment, we review the key points of all that we have learned in this path.
Activity: Detecting a jailbroken device

Video - 00:04:00

In this activity, we use our app to test if the device is jailbroken.
Jailbreak detection

Video - 00:13:00

In this segment, we learn various ways to detect if your app is installed on a jailbroken device.
Testing types

Video - 00:15:00

In this segment, we learn about the various testing types and when to use each one as you develop your app.
New vulnerability research

Video - 00:07:00

In this segment, we see how to continue our vulnerability research online.vvvvv
Logging, part 3

Video - 00:08:00

In this segment, we learn about Apple's new Unified Logging System and how to implement it in Swift.
Logging, part 2

Video - 00:07:00

In this segment, we learn how to use NSLog in Swift to log errors.

Video - 00:07:00

In this segment, we learn about basic logging in Swift.
Activity: Handling errors

Video - 00:15:00

In this activity, we incorporate error handling in Swift, learning how to manage unexpected conditions in our code.
Error handling

Video - 00:11:00

In this segment, we examine error handling in Swift, including using the throws keywork, do … catch and try.
Activity: Working with external code

Video - 00:07:00

In this activity, we make a call to a third-party function in Swift.
Understanding risks associated with external code

Video - 00:07:00

In this segment, we discuss the realities, pros and the cons of using third-party code in our app.

Meet the author

Chrys Thorsen

Chrys Thorsen is a technology and education consultant with 25 years of experience. Her work has taken her around the U.S. and overseas, including as a contractor for the CDC using technology to help fight HIV/AIDS in Africa.

During her career, she has acquired 40 IT certifications, authored over 25 textbooks on a wide range of IT subjects, including secure iOS and Android coding, and created an equal number of IT-related video courses. When not working, Chrys enjoys reading scientific articles and experimenting with Internet-of-Things devices. She currently lives in Virginia with her sister, her cat and her dog which, as she describes it, "have the worst sibling rivalry imaginable."

Unlock 7 days of free training

  • 1,400+ hands-on courses and labs
  • Certification practice exams
  • Skill assessments

Associated NICE Work Roles

All Infosec training maps directly to the NICE Workforce Framework for Cybersecurity to guide you from beginner to expert across 52 Work Roles.

  • All-Source Analyst
  • Mission Assessment Specialist
  • Exploitation Analyst

Plans & pricing

Infosec Skills Personal

$299 / year

  • 190+ role-guided learning paths (e.g., Ethical Hacking, Threat Hunting)
  • 100s of hands-on labs in cloud-hosted cyber ranges
  • Custom certification practice exams (e.g., CISSP, Security+)
  • Skill assessments
  • Infosec peer community support

Infosec Skills Teams

$799 per license / year

  • Team administration and reporting
  • Dedicated client success manager
  • Single sign-on (SSO)
    Easily authenticate and manage your learners by connecting to any identity provider that supports the SAML 2.0 standard.
  • Integrations via API
    Retrieve training performance and engagement metrics and integrate learner data into your existing LMS or HRS.
  • 190+ role-guided learning paths and assessments (e.g., Incident Response)
  • 100s of hands-on labs in cloud-hosted cyber ranges
  • Create and assign custom learning paths
  • Custom certification practice exams (e.g., CISSP, CISA)
  • Optional upgrade: Guarantee team certification with live boot camps

Learn about scholarships and financing with

Affirm logo

Award-winning training you can trust