Secure development with C++ - Lessons and techniques - Helge Penne - NDC TechTown 2023

  Рет қаралды 742

NDC Conferences

NDC Conferences

Күн бұрын

This talk was recorded at NDC Techtown in Kongsberg, Norway. #ndctechtown #ndcconferences #cplusplus #security #softwaredeveloper
Attend the next NDC conference near you:
ndcconferences...
ndctechtown.com/
Subscribe to our KZbin channel and learn every day:
/‪@NDC‬
We will look at lessons learned through developing security products using C++.
Writing secure C++ code is hard. We will try to take a lesson from other industries where security is important and see what measures we can put in place to make our C++ code more secure.
We will talk about practical tools and techniques, language features to use and to avoid, fuzzers and sanitizers, hardening using compiler options, methodology, some UB to be aware of, and the general feasibility of using C++ where security is important.

Пікірлер: 1
@mogenshansen7210
@mogenshansen7210 9 ай бұрын
Thanks a lot for the presentation. It is really good and practical. I have been involved developing parts of safety critical safety critical systems in C++ for many. To various degrees (depending on the context) I have been doing and/or promoting most of what you are describing for years. There is one thing I don't fully agree on in your presentation, and that is the use of operator[] vs at(). If we assume that the system is not intended to try to do out-of-bounds access (like, we do not intensional use the exception thrown from at() to say terminate a loop), then regardsless of whether we use operator[] or at() we are by definition outside the scope of the intended state machine - we are executing a Weird Machine - if the program attempts to do out-of-bounds access. The question is: if we are in a unknown state, how can an exception be handled in such a way that garantees that we get back to a known state. I think that is impossible in general. The requirement must be that we get into a known state - which as described in the presentation may well be to terminate (and maybe restart) the application. Thus a reasonable implementation of operator[] could be to terminate the application in case of out-of-bounds access - which is well inside what is allowed from undefined behavior.
2024 AOSP and AAOS September Meetup: The COVESA SDK
30:34
chris simmonds
Рет қаралды 67
Миллионер | 1 - серия
34:31
Million Show
Рет қаралды 2,3 МЛН
The Joker wanted to stand at the front, but unexpectedly was beaten up by Officer Rabbit
00:12
Do you choose Inside Out 2 or The Amazing World of Gumball? 🤔
00:19
Complete Cyber Security Course | Learn How To do Cyber Security in Urdu
15:24:36
The Future of Cookies - Anders Abel - NDC Security 2024
50:10
NDC Conferences
Рет қаралды 6 М.
-memory-safe C++ - Jim Radigan - CppCon 2022
1:05:45
CppCon
Рет қаралды 22 М.
Clean Architecture with NET 8
54:38
NimblePros
Рет қаралды 3,6 М.
Red Teaming Large Language Models - Armin Buescher - NDC Security 2024
58:59
TDD Revisited - Ian Cooper - NDC Porto 2023
1:13:26
NDC Conferences
Рет қаралды 15 М.
Locknote: The Albatross Project - Mark Rendle - NDC Oslo 2024
37:44
NDC Conferences
Рет қаралды 3,4 М.
Timur Doumler: C++ and Safety
1:10:48
SwedenCpp
Рет қаралды 2,4 М.
Cybersecurity Architecture: Networks
27:31
IBM Technology
Рет қаралды 127 М.
Самый дорогой iPHONE 16 PRO MAX #shorts
0:58
Арсений Петров
Рет қаралды 2,6 МЛН
iPhone or Samsung?
0:28
Kan Andrey
Рет қаралды 1,6 МЛН