[{"data":1,"prerenderedAt":460},["ShallowReactive",2],{"/de-de/the-source/authors/joel-krooswyk":3,"footer-de-de":32,"the-source-banner-de-de":328,"the-source-navigation-de-de":334,"the-source-newsletter-de-de":356,"authors-de-de":363,"categories-de-de":393,"joel-krooswyk-articles-list-de-de":394},{"id":4,"title":5,"body":6,"category":6,"config":7,"content":9,"description":6,"extension":23,"meta":24,"navigation":25,"path":26,"seo":27,"slug":28,"stem":29,"testContent":6,"type":30,"__hash__":31},"theSourceAuthors/de-de/the-source/authors/joel-krooswyk.yml","Joel Krooswyk",null,{"layout":8},"the-source",[10,21],{"componentName":11,"componentContent":12},"TheSourceAuthorHero",{"config":13,"name":5,"role":16,"bio":17,"headshot":18},{"gitlabHandle":14,"linkedInProfileUrl":15},"jkrooswyk","https://www.linkedin.com/in/joelrkrooswyk/","Federal CTO","Joel Krooswyk ist Federal CTO bei GitLab. Joel ist seit 2017 aktiv am Wachstum von GitLab beteiligt. Seine 25-jährige Führungserfahrung hat er nicht nur im öffentlichen Sektor der USA gesammelt, sondern auch in kleinen, mittleren und großen Unternehmen auf der ganzen Welt. Joel verbindet eine umfassende Expertise auf dem Gebiet der politischen Strategie mit langjähriger Erfahrung in den Bereichen Technologie, Softwareentwicklung, KI und Cybersicherheit. Seine Expertise wird regelmäßig sowohl von der Industrie als auch Behörden bei Fragen der Politik für Kommentare und Reaktionen in Anspruch genommen.",{"altText":5,"config":19},{"src":20},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1751463423/mkmdhuxsjggfvokdmdv7.jpg",{"componentName":22},"TheSourceArticlesList","yml",{},true,"/de-de/the-source/authors/joel-krooswyk",{"title":5},"joel-krooswyk","de-de/the-source/authors/joel-krooswyk","author","qkbmOpy21SBoBDoUFmTzU-ArRfC8ivjPtBxNozd7T2U",{"data":33},{"text":34,"source":35,"edit":41,"contribute":46,"config":51,"items":56,"minimal":320},"Git ist eine Marke von Software Freedom Conservancy und unsere Verwendung von „GitLab“ erfolgt unter Lizenz.",{"text":36,"config":37},"Quelltext der Seite anzeigen",{"href":38,"dataGaName":39,"dataGaLocation":40},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":42,"config":43},"Diese Seite bearbeiten",{"href":44,"dataGaName":45,"dataGaLocation":40},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":47,"config":48},"Beteilige dich",{"href":49,"dataGaName":50,"dataGaLocation":40},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":52,"facebook":53,"youtube":54,"linkedin":55},"https://x.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[57,84,157,220,282],{"title":58,"links":59,"subMenu":65},"Plattform",[60],{"text":61,"config":62},"DevSecOps-Plattform",{"href":63,"dataGaName":64,"dataGaLocation":40},"/de-de/platform/","devsecops platform",[66],{"title":67,"links":68},"Preise",[69,74,79],{"text":70,"config":71},"Tarife anzeigen",{"href":72,"dataGaName":73,"dataGaLocation":40},"/de-de/pricing/","view plans",{"text":75,"config":76},"Vorteile von Premium",{"href":77,"dataGaName":78,"dataGaLocation":40},"/de-de/pricing/premium/","why premium",{"text":80,"config":81},"Vorteile von Ultimate",{"href":82,"dataGaName":83,"dataGaLocation":40},"/de-de/pricing/ultimate/","why ultimate",{"title":85,"links":86},"Lösungen",[87,92,97,102,107,112,117,122,127,132,137,142,147,152],{"text":88,"config":89},"Digitale Transformation",{"href":90,"dataGaName":91,"dataGaLocation":40},"/de-de/topics/digital-transformation/","digital transformation",{"text":93,"config":94},"Sicherheit und Compliance",{"href":95,"dataGaName":96,"dataGaLocation":40},"/de-de/solutions/application-security-testing/","Application security testing",{"text":98,"config":99},"Automatisierte Softwarebereitstellung",{"href":100,"dataGaName":101,"dataGaLocation":40},"/de-de/solutions/delivery-automation/","automated software delivery",{"text":103,"config":104},"Agile Entwicklung",{"href":105,"dataGaName":106,"dataGaLocation":40},"/de-de/solutions/agile-delivery/","agile delivery",{"text":108,"config":109},"Cloud-Transformation",{"href":110,"dataGaName":111,"dataGaLocation":40},"/de-de/topics/cloud-native/","cloud transformation",{"text":113,"config":114},"SCM",{"href":115,"dataGaName":116,"dataGaLocation":40},"/de-de/solutions/source-code-management/","source code management",{"text":118,"config":119},"CI/CD",{"href":120,"dataGaName":121,"dataGaLocation":40},"/de-de/solutions/continuous-integration/","continuous integration & delivery",{"text":123,"config":124},"Wertstrommanagement",{"href":125,"dataGaName":126,"dataGaLocation":40},"/de-de/solutions/value-stream-management/","value stream management",{"text":128,"config":129},"GitOps",{"href":130,"dataGaName":131,"dataGaLocation":40},"/de-de/solutions/gitops/","gitops",{"text":133,"config":134},"Enterprise",{"href":135,"dataGaName":136,"dataGaLocation":40},"/de-de/enterprise/","enterprise",{"text":138,"config":139},"Kleinunternehmen",{"href":140,"dataGaName":141,"dataGaLocation":40},"/de-de/small-business/","small business",{"text":143,"config":144},"Öffentlicher Sektor",{"href":145,"dataGaName":146,"dataGaLocation":40},"/de-de/solutions/public-sector/","public sector",{"text":148,"config":149},"Bildungswesen",{"href":150,"dataGaName":151,"dataGaLocation":40},"/de-de/solutions/education/","education",{"text":153,"config":154},"Finanzdienstleistungen",{"href":155,"dataGaName":156,"dataGaLocation":40},"/de-de/solutions/finance/","financial services",{"title":158,"links":159},"Ressourcen",[160,165,170,175,180,185,190,195,200,205,210,215],{"text":161,"config":162},"Installieren",{"href":163,"dataGaName":164,"dataGaLocation":40},"/de-de/install/","install",{"text":166,"config":167},"Kurzanleitungen",{"href":168,"dataGaName":169,"dataGaLocation":40},"/de-de/get-started/","quick setup checklists",{"text":171,"config":172},"Lernen",{"href":173,"dataGaName":174,"dataGaLocation":40},"https://university.gitlab.com/","learn",{"text":176,"config":177},"Produktdokumentation",{"href":178,"dataGaName":179,"dataGaLocation":40},"https://docs.gitlab.com/","docs",{"text":181,"config":182},"Blog",{"href":183,"dataGaName":184,"dataGaLocation":40},"/de-de/blog/","blog",{"text":186,"config":187},"Kundenerfolge",{"href":188,"dataGaName":189,"dataGaLocation":40},"/de-de/customers/","customer success stories",{"text":191,"config":192},"Remote",{"href":193,"dataGaName":194,"dataGaLocation":40},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"text":196,"config":197},"GitLab-Services",{"href":198,"dataGaName":199,"dataGaLocation":40},"/de-de/services/","services",{"text":201,"config":202},"Community",{"href":203,"dataGaName":204,"dataGaLocation":40},"/community/","community",{"text":206,"config":207},"Forum",{"href":208,"dataGaName":209,"dataGaLocation":40},"https://forum.gitlab.com/","forum",{"text":211,"config":212},"Veranstaltungen",{"href":213,"dataGaName":214,"dataGaLocation":40},"/events/","events",{"text":216,"config":217},"Partner",{"href":218,"dataGaName":219,"dataGaLocation":40},"/de-de/partners/","partners",{"title":221,"links":222},"Unternehmen",[223,228,233,238,243,248,253,257,262,267,272,277],{"text":224,"config":225},"Über",{"href":226,"dataGaName":227,"dataGaLocation":40},"/de-de/company/","company",{"text":229,"config":230},"Karriere",{"href":231,"dataGaName":232,"dataGaLocation":40},"/jobs/","jobs",{"text":234,"config":235},"Geschäftsführung",{"href":236,"dataGaName":237,"dataGaLocation":40},"/company/team/e-group/","leadership",{"text":239,"config":240},"Team",{"href":241,"dataGaName":242,"dataGaLocation":40},"/company/team/","team",{"text":244,"config":245},"Handbuch",{"href":246,"dataGaName":247,"dataGaLocation":40},"https://handbook.gitlab.com/","handbook",{"text":249,"config":250},"Investor Relations",{"href":251,"dataGaName":252,"dataGaLocation":40},"https://ir.gitlab.com/","investor relations",{"text":254,"config":255},"Sustainability",{"href":256,"dataGaName":254,"dataGaLocation":40},"/sustainability/",{"text":258,"config":259},"Vielfalt, Inklusion und Zugehörigkeit",{"href":260,"dataGaName":261,"dataGaLocation":40},"/de-de/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":263,"config":264},"Trust Center",{"href":265,"dataGaName":266,"dataGaLocation":40},"/de-de/security/","trust center",{"text":268,"config":269},"Newsletter",{"href":270,"dataGaName":271,"dataGaLocation":40},"/company/contact/#contact-forms","newsletter",{"text":273,"config":274},"Presse",{"href":275,"dataGaName":276,"dataGaLocation":40},"/press/","press",{"text":278,"config":279},"Transparenzerklärung zu moderner Sklaverei",{"href":280,"dataGaName":281,"dataGaLocation":40},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"title":283,"links":284},"Nimm Kontakt auf",[285,290,295,300,305,310,315],{"text":286,"config":287},"Sprich mit einem Experten/einer Expertin",{"href":288,"dataGaName":289,"dataGaLocation":40},"/de-de/sales/","sales",{"text":291,"config":292},"Support",{"href":293,"dataGaName":294,"dataGaLocation":40},"/support/","get help",{"text":296,"config":297},"Kundenportal",{"href":298,"dataGaName":299,"dataGaLocation":40},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"text":301,"config":302},"Status",{"href":303,"dataGaName":304,"dataGaLocation":40},"https://status.gitlab.com/","status",{"text":306,"config":307},"Nutzungsbedingungen",{"href":308,"dataGaName":309,"dataGaLocation":40},"/terms/","terms of use",{"text":311,"config":312},"Datenschutzerklärung",{"href":313,"dataGaName":314,"dataGaLocation":40},"/de-de/privacy/","privacy statement",{"text":316,"config":317},"Cookie-Einstellungen",{"dataGaName":318,"dataGaLocation":40,"id":319,"isOneTrustButton":25},"cookie preferences","ot-sdk-btn",{"items":321},[322,324,326],{"text":306,"config":323},{"href":308,"dataGaName":309,"dataGaLocation":40},{"text":311,"config":325},{"href":313,"dataGaName":314,"dataGaLocation":40},{"text":316,"config":327},{"dataGaName":318,"dataGaLocation":40,"id":319,"isOneTrustButton":25},{"visibility":25,"title":329,"button":330},"The Intelligent Software Development Era: How AI is reshaping DevSecOps teams",{"config":331,"text":333},{"href":332},"/developer-survey/","Get the research report",{"logo":335,"subscribeLink":340,"navItems":344},{"altText":336,"config":337},"the source logo",{"src":338,"href":339},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1750191004/t7wz1klfb2kxkezksv9t.svg","/de-de/the-source/",{"text":341,"config":342},"Abonnieren",{"href":343},"#subscribe",[345,349,352],{"text":346,"config":347},"Künstliche Intelligenz",{"href":348},"/de-de/the-source/ai/",{"text":93,"config":350},{"href":351},"/de-de/the-source/security/",{"text":353,"config":354},"Plattform und Infrastruktur",{"href":355},"/de-de/the-source/platform/",{"title":357,"description":358,"submitMessage":359,"formData":360},"The-Source-Newsletter","Bleibe mit Erkenntnissen für die Zukunft der Softwareentwicklung auf dem Laufenden.","Du hast dich erfolgreich für den Newsletter von The Source angemeldet.",{"config":361},{"formId":362,"formName":271,"hideRequiredLabel":25},28465,{"amanda-rueda":364,"andre-michael-braun":365,"andrew-haschka":366,"ayoub-fandi":367,"brian-wald":368,"bryan-ross":369,"chandler-gibbons":370,"dave-steer":371,"ddesanto":372,"derek-debellis":373,"emilio-salvador":374,"erika-feldman":375,"george-kichukov":376,"gitlab":377,"grant-hickman":378,"haim-snir":379,"iganbaruch":380,"jlongo":381,"joel-krooswyk":5,"josh-lemos":382,"julie-griffin":383,"kristina-weis":384,"lee-faus":385,"ncregan":386,"rschulman":387,"sabrina-farmer":388,"sandra-gittlen":389,"sharon-gaudin":390,"stephen-walters":391,"taylor-mccaslin":392},"Amanda Rueda","Andre Michael Braun","Andrew Haschka","Ayoub Fandi","Brian Wald","Bryan Ross","Chandler Gibbons","Dave Steer","David DeSanto","Derek DeBellis","Emilio Salvador","Erika Feldman","George Kichukov","GitLab","Grant Hickman","Haim Snir","Itzik Gan Baruch","Joseph Longo","Josh Lemos","Julie Griffin","Kristina Weis","Lee Faus","Niall Cregan","Robin Schulman","Sabrina Farmer","Sandra Gittlen","Sharon Gaudin","Stephen Walters","Taylor McCaslin",{"ai":346,"platform":353,"security":93},[395,437],{"id":396,"title":397,"body":6,"category":398,"config":399,"content":403,"description":404,"extension":23,"meta":429,"navigation":25,"path":430,"seo":431,"slug":433,"stem":434,"type":435,"__hash__":436,"date":405,"timeToRead":406,"heroImage":407,"keyTakeaways":408,"articleBody":412,"faq":413},"theSource/de-de/the-source/security/why-legacy-code-is-a-security-risk-and-how-ai-can-help.yml","Warum Legacy-Code ein Sicherheitsrisiko darstellt – und wie KI helfen kann","security",{"layout":8,"template":400,"featured":401,"author":28,"sourceCTA":402,"isHighlighted":401,"authorName":5},"TheSourceArticle",false,"source-lp-how-a-devsecops-platform-drives-business-success-the-complete-guide",{"title":397,"description":404,"date":405,"timeToRead":406,"heroImage":407,"keyTakeaways":408,"articleBody":412,"faq":413},"Erfahre, wie KI-gestütztes Code-Refactoring Altsysteme modernisieren, deine Sicherheitsprotokolle verbessern und dein Unternehmen in die Zukunft führen kann.","2025-01-15T00:00:00.000Z","Lesezeit: 6 Min.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1751463670/cdynzww9p2annh3mmbhl.png",[409,410,411],"Legacy-Code ist teuer und zeitaufwändig in der Wartung und kann, wenn er nicht mit den neuesten Sicherheitstools kompatibel ist, zu einer ernsthaften Belastung für Unternehmen aller Branchen werden.","Code-Refactoring ist eine Strategie, die dazu beitragen kann, den Code lesbarer zu machen und so die Stabilität der Codebase sowie die Produktivität und Effizienz der Entwickler(innen) zu verbessern.","Zusammen mit präventiven Sicherheitstools kann KI-gestütztes Code-Refactoring Teams dabei helfen, ihren Legacy-Code zu modernisieren und gleichzeitig das Risiko von Sicherheitslücken zu verringern.","Die rasante Beschleunigung der heutigen Technologie ist aufregend. Neue Produkte und Möglichkeiten für Wachstum und Innovation gibt es quasi überall. Doch diese Geschwindigkeit des Wachstums und der Veränderung hat auch ihre Schattenseiten, vor allem in Bezug auf die Sicherheit: Schon eine einzige böswillige Handlung kann zu massiven Geschäftsunterbrechungen, Rufschädigung und Umsatzeinbußen führen.\n\nWahrscheinlich hast du schon gehört, wie Branchenführer über die Notwendigkeit der digitalen Transformation und die besorgniserregende Abhängigkeit von veralteten oder „Legacy“-Systemen gesprochen haben. Auch wenn Legacy-Code an sich nicht problematisch ist, ist er oft nicht mit modernen Sicherheitstools kompatibel, was zu Sicherheitslücken führt, die ausgenutzt werden können. In Verbindung mit Open-Source-Code, der ständige Sicherheitsvorkehrungen erfordert, kann deine Codebase die Daten, die Benutzer(innen) und den Ruf deines Unternehmens in Gefahr bringen.\n\nLegacy-Code ist aus Sicht der Sicherheit und der Compliance riskant und für die Entwickler(innen) teuer und zeitaufwändig zu pflegen – falls die Entwickler(innen) in deinem Team überhaupt über das nötige Wissen verfügen, um diese Arbeit zu erledigen.\n\nLetztlich ist diese branchenweite Abhängigkeit von Legacy-Code eine bedenkliche und kostspielige Praxis. Wie können wir uns also davon befreien?\n\nIm Folgenden gehe ich auf Legacy-Code ein und zeige, wie Unternehmen die Sicherheit ihrer Codebase durch KI-basiertes Code-Refactoring erhöhen können. Zusammen mit KI-gestützten Test- und Sicherheitsfunktionen wird das Code-Refactoring deine Codebase in die Zukunft befördern und dein ganzes Team in die Lage versetzen, nach vorne und nicht zurück zu schauen.\n\n## Was ist Legacy-Code?\n\nIm Großen und Ganzen bezeichnet Legacy-Code eine bestehende Codebase, die ein Team von früheren Teammitgliedern geerbt hat und weiterhin nutzt und pflegt. Der Code mag gut funktionieren, aber wahrscheinlich haben im Laufe der Jahre mehrere verschiedene Entwickler(innen) daran gearbeitet. Dem aktuellen Team fällt es vielleicht schwer, zu erkennen, welche Änderungen sinnvoll sind und welche nicht. Außerdem könnte der Code mit einem veralteten Framework oder in einer Programmiersprache geschrieben worden sein, die niemand im Team kennt (egal, ob sie einfach nur alt oder völlig überholt ist).\n\nEs mag seltsam erscheinen, dass Unternehmen immer noch auf Legacy-Code zurückgreifen. Dafür gibt es verschiedene Gründe, aber betrachte es einmal so: Du wohnst in einem alten Haus. Es ist gemütlich und vertraut, aber die Rohrleitungen sind unzuverlässig, die Verkabelung ist veraltet und jedes Mal, wenn du eine Sache reparierst, geht etwas anderes kaputt. Klar, du könntest umbauen, aber das bedeutet einen riesigen Aufwand – Handwerker(innen), Genehmigungen, monatelanges Chaos und Kosten, die außer Kontrolle geraten können.\n\nAlso flickst du alles und hoffst auf das Beste. Das ist nicht ideal, aber es funktioniert – vorerst. So ähnlich ist es auch mit Legacy-Code. Es ist die vertraute, „funktionierende“ Lösung, auch wenn sie klapprig und ineffizient ist. Den Code von Grund auf neu zu schreiben, ist eine gewaltige Herausforderung mit eigenen Risiken und Kosten. Und wer hat schon Zeit für eine umfassende Überarbeitung, wenn neue Funktionen zu entwickeln und dringende Bugs zu beheben sind?\n\nWenn es darum geht, Code zu aktualisieren, entscheiden sich viele Unternehmen dafür, ihren Legacy-Code beizubehalten, weil die Instandhaltung auf kurze Sicht weniger Unterbrechungen mit sich bringen kann. Die Aktualisierung des Codes ist mit viel Entwicklungs- und Testarbeit verbunden. Außerdem muss das Team geschult werden, um sicherzustellen, dass es mit der veralteten Programmiersprache oder dem veralteten Framework arbeiten kann. Wenn es keine Dokumentation gibt, kann es sogar noch schwieriger sein, sich zurechtzufinden.\n\n## Was ist das Problem mit Legacy-Code?\n\nWenn sich dein Unternehmen dazu entschließt, den alten Code beizubehalten – und das tun viele –, riskierst du damit eine ganze Reihe von Problemen. Da dieser Code nicht für neuere Technologien entwickelt wurde, kannst du ihn möglicherweise nicht mit der neuesten und besten Software (z. B. KI-Tools) integrieren, was sich auch auf die Leistung und Skalierbarkeit deiner Produkte auswirken kann. Das kann dich zurückwerfen und die Kundenerfahrung beeinträchtigen.\n\nDas Schlimmste an Legacy-Code, egal ob er vor fünf oder vor 50 Jahren geschrieben wurde, ist, dass es möglicherweise keine Sicherheitsscanner gibt, die diesen Code überprüfen können. Das bedeutet, dass du Probleme bei der Aktualisierung nicht selbst erkennen kannst. Außerdem verstehen die Entwickler(innen), die diese Aktualisierungen vornehmen, die Programmiersprache oder ihre Struktur möglicherweise nicht ausreichend und könnten dabei sogar versehentlich Sicherheitslücken erzeugen. Und schließlich sind ältere Anwendungen häufig in C oder C++ geschrieben, also in speicherunsicheren Sprachen, in denen sich nachweislich [70 % der identifizierten Sicherheitslücken](https://www.cisa.gov/news-events/news/urgent-need-memory-safety-software-products) befinden.\n\nDiese drei Punkte – die Tatsache, dass es möglicherweise keine Möglichkeit gibt, Legacy-Code zu schützen, dass es weniger Methoden gibt, ihn sicher zu aktualisieren, und dass das Endergebnis viel wahrscheinlicher angreifbar ist – sollten Warnsignale für Unternehmen aller Branchen sein.\n\nDie US-[Behörde für Cybersicherheit und Infrastruktursicherheit (U.S. Cybersecurity and Infrastructure Security Agency)](https://www.cisa.gov/stopransomware/bad-practices) hat einen Katalog von schlechten Praktiken erstellt, die wichtige Infrastrukturen in Gefahr bringen können:\n\n„Die Verwendung von nicht unterstützter (oder veralteter) Software im Dienst von kritischen Infrastrukturen und staatlichen kritischen Funktionen ist gefährlich und erhöht das Risiko für die nationale Sicherheit, die nationale wirtschaftliche Sicherheit und die landesweite öffentliche Gesundheit und Sicherheit erheblich. Diese gefährliche Praxis ist besonders gravierend bei Technologien, die über das Internet zugänglich sind.“\n\nAuch wenn du nicht im Bereich der nationalen Sicherheit oder im Bereich der nationalen öffentlichen Gesundheit und Sicherheit arbeitest, gilt diese Warnung dennoch: Die Verwendung von altem Code ist keine bewährte Methode. Es ist eine schlechte.\n\n## Die Lösung: Code-Refactoring\n\nDer Softwareentwickler und Autor [Martin Fowler](https://www.martinfowler.com/) sagt: „Refactoring ist eine kontrollierte Technik zur Verbesserung des Designs einer bestehenden Codebase, eine systematische Technik zur Umstrukturierung von bestehendem Code, bei der die interne Struktur verändert wird, ohne das externe Verhalten zu ändern.“\n\nMit anderen Worten: Mit Code-Refactoring kannst du deinen Legacy-Code schützen und modernisieren, ohne seine ursprüngliche Funktionalität zu beeinträchtigen.\n\nEs gibt viele Refactoring-Techniken – vom Inline-Refactoring, bei dem der Code durch das Entfernen veralteter Elemente vereinfacht wird, bis zum Refactoring durch Abstraktion, bei dem doppelter Code gelöscht wird. Es ist wichtig zu wissen, dass Code-Refactoring Zeit und umfangreiche Kenntnisse in der Entwicklung erfordert, damit es gut funktioniert. Außerdem sind viele Tests erforderlich, während die Entwickler(innen) bereits mit anderen Aufgaben beschäftigt sind.\n\nCode-Refactoring ist zwar die Lösung, um deinen Legacy-Code zukunftsfähig, lesbar, effizient und sicher zu machen, aber es ist ein Projekt für sich, vor allem im großen Maßstab.\n\n## Wie KI helfen kann\n\nWir wissen, dass KI den Lebenszyklus der Softwareentwicklung bereits beschleunigt – und es gibt eine Menge, was [KI tun kann, um auch den Refactoring-Prozess zu beschleunigen](https://about.gitlab.com/blog/refactor-code-into-modern-languages-with-ai-powered-gitlab-duo/). Tools wie [GitLab Duo](https://about.gitlab.com/blog/gitlab-duo-chat-now-generally-available/) können zum Beispiel dabei helfen, bestehenden Code zu erklären und neuen Code zu erstellen – zwei der größten Hürden bei der Modernisierung von Legacy-Code. Wenn Entwickler(innen) mit einer Programmiersprache nicht vertraut sind, kann KI helfen, die Lücken zu füllen. In Bezug auf Tests und Sicherheit kann KI auch [Ursachen analysieren, Tests generieren](https://about.gitlab.com/blog/developing-gitlab-duo-blending-ai-and-root-cause-analysis-to-fix-ci-cd/) und [Entwickler(innen) helfen, Sicherheitslücken zu beheben](https://about.gitlab.com/the-source/ai/understand-and-resolve-vulnerabilities-with-ai-powered-gitlab-duo/). Mit KI im Toolkit wird Code-Refactoring endlich zugänglicher und für Unternehmen realisierbar, sodass sie dieses Projekt endgültig aus ihrem Backlog streichen können.\n\nLaut [unserer Studie](https://about.gitlab.com/developer-survey/2024/ai/) nutzen 34 % aller Befragten, die KI im gesamten Lebenszyklus der Softwareentwicklung einsetzen, KI bereits zur Modernisierung von Legacy-Code. In der Finanzdienstleistungsbranche ist dieser Anteil sogar noch höher (46 %).\n\nNatürlich gibt es ein paar Dinge zu beachten, wenn du mit der Implementierung von KI in deiner Praxis beginnst.\n\nKI ist nicht perfekt. Sie muss immer noch getestet, mit Leitlinien versehen und von Menschen beaufsichtigt werden. KI kann zwar einige dieser wichtigen, zeitaufwändigen manuellen Aufgaben erleichtern und beschleunigen, aber sie kann diese Arbeit nicht allein erledigen. Vor allem im Hinblick auf die Sicherheit solltest du andere Tools einsetzen, um deinen Code so sicher wie möglich zu machen. Du solltest eine [dynamische Software-Stückliste](https://about.gitlab.com/blog/the-ultimate-guide-to-sboms/) (auch SBOM genannt) erstellen, damit du einen vollständigen Überblick über die Lizenz- und Sicherheitsrisiken deiner Software hast, einschließlich des eventuell vorhandenen Legacy-Codes.\n\n## Mach deine Codebase zukunftssicher\n\nDer Sprung von der Wartung der Legacy-Codebase zur Modernisierung mag sich zwar beängstigend anfühlen, ist aber der beste Weg, wenn du die Sicherheit deines Unternehmens und deiner Benutzerdaten gewährleisten willst. Mit den richtigen Tools und Methoden kann er für deine Teams effizienter und für dein Unternehmen kostengünstiger sein.\n\nDie gute Nachricht ist, dass deine Teams keine Zeit und Ressourcen darauf verwenden müssen, alte Programmiersprachen zu entschlüsseln und mit alten Frameworks zu arbeiten – was zu Frustration, Verzögerungen und Engpässen führt. Indem du der KI die harte Arbeit des Code-Refactorings überlässt, damit er sicher ist und so funktioniert, wie er sollte, können sich die Entwickler(innen) auf das konzentrieren, was sie am besten können: neue Produkte und Funktionen entwickeln und den Wert für die Kund(inn)en steigern.",[414,417,420,423,426],{"header":415,"content":416},"Warum gilt Legacy-Code als Sicherheitsrisiko?","Legacy-Code ist riskant, da er oft veraltete Frameworks oder Programmiersprachen verwendet, denen moderne Sicherheitsmaßnahmen fehlen. Dadurch ist sie nicht mit den neuesten Sicherheitstools kompatibel, was das Risiko von Sicherheitslücken erhöht. Außerdem kann nicht unterstützte oder veraltete Software leicht von Angreifer(inne)n ausgenutzt werden und die Datenintegrität und -sicherheit gefährden.",{"header":418,"content":419},"Wie kann KI-basiertes Code-Refactoring die Sicherheit von Legacy-Code verbessern?","KI-basiertes Code-Refactoring modernisiert Legacy-Systeme wie folgt:\n - Identifikation von veralteten oder unsicheren Programmiermustern und Vorschlagen von sicheren Alternativen\n - Automatisierte Codeverbesserungen ohne Änderung des externen Verhaltens, wodurch die Lesbarkeit und Wartbarkeit verbessert wird\n - Generierung von Sicherheitstests und Analyse der Grundursachen von Sicherheitslücken, was eine schnellere Behebung ermöglicht\nDieser Ansatz reduziert den manuellen Aufwand und beschleunigt den Übergang zu sichereren, effizienteren und besser skalierbaren Codebases.",{"header":421,"content":422},"Was sind die Herausforderungen bei der Pflege von Legacy-Code ohne KI?","Zu den Herausforderungen gehören:\n - __Fehlende moderne Sicherheitsunterstützung__: Traditionelle Sicherheitsscanner sind möglicherweise nicht mit Legacy-Code kompatibel\n - __Komplexe und veraltete Frameworks__: Entwickler(innen) verfügen möglicherweise nicht über das nötige Fachwissen, um den alten Code zu warten oder zu aktualisieren\n - __Hohe Wartungskosten__: Die Wartung von Altsystemen ist kostspielig und zeitaufwändig und bindet Ressourcen, die für Innovationen fehlen\n - __Sicherheitsrisiken__: Veralteter Code ist anfälliger für Sicherheitslücken und Angriffe, was das Risiko von Datenschutzverletzungen erhöht",{"header":424,"content":425},"Wie unterstützt GitLab KI-basiertes Refactoring und die Modernisierung von Legacy-Code?","GitLab verwendet GitLab Duo, um Entwickler(innen) dabei zu helfen, Legacy-Code zu verstehen, indem es Erklärungen liefert und neuen Code generiert. Außerdem bietet es:\n - KI-gestützte Sicherheitsscans zur Erkennung von Sicherheitslücken in Legacy-Code\n - Automatisierte Tests und Abhilfe zur Verbesserung der Codesicherheit\n - Dynamische Software-Stücklisten (SBOMs) für den Einblick in Lizenz- und Sicherheitsrisiken, einschließlich Legacy-Komponenten",{"header":427,"content":428},"Welche Vorteile bietet die Verwendung von KI für das Refactoring von Legacy-Code?","Zu den Vorteilen gehören:\n - __Verbesserte Sicherheit__: KI identifiziert und mildert Sicherheitslücken und verbessert die Sicherheitslage\n - __Erhöhte Produktivität__: Durch die Automatisierung sich wiederholender Aufgaben können sich Entwickler(innen) auf Innovationen konzentrieren\n - __Kosteneffizienz__: Reduzierte Wartungskosten durch die Modernisierung des Codes, um mit aktuellen Frameworks und Tools zu arbeiten\n - __Skalierbare Modernisierung__: KI ermöglicht skalierbares und konsistentes Refactoring über komplexe Codebases hinweg, um die Software-Assets des Unternehmens zukunftssicher zu machen",{},"/de-de/the-source/security/why-legacy-code-is-a-security-risk-and-how-ai-can-help",{"title":432,"ogTitle":432,"description":404,"ogDescription":404,"ogImage":407},"Legacy-Code als Sicherheitsrisiko: So hilft KI","why-legacy-code-is-a-security-risk-and-how-ai-can-help","de-de/the-source/security/why-legacy-code-is-a-security-risk-and-how-ai-can-help","article","iELLlNBTKb9vR3R8uX9wgFJsd7gLAXHUMwnfC7vYOYo",{"id":438,"title":439,"body":6,"category":398,"config":440,"content":442,"description":444,"extension":23,"meta":452,"navigation":25,"path":453,"seo":454,"slug":457,"stem":458,"type":435,"__hash__":459,"date":443,"timeToRead":445,"heroImage":446,"keyTakeaways":447,"articleBody":451},"theSource/de-de/the-source/security/strengthen-your-cybersecurity-strategy-with-secure-by-design.yml","Stärke deine Cybersicherheitsstrategie mit Secure by Design-Prinzipien",{"layout":8,"template":400,"author":28,"featured":401,"sourceCTA":441,"isHighlighted":401,"authorName":5},"source-lp-guide-to-dynamic-sboms",{"title":439,"date":443,"description":444,"timeToRead":445,"heroImage":446,"keyTakeaways":447,"articleBody":451},"2024-10-29","Erfahre mehr über Secure-by-Design-Prinzipien und verwandte Konzepte und wie du heute Sicherheit in deine Software-Entwicklungsprozesse integrieren kannst.","Lesezeit: 6 Min.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1751463932/pnfdgovoaq5qd1yprxuc.png",[448,449,450],"Secure by Design, Secure by Default und Secure by Demand verhindern Schwachstellen und Angriffe auf die Software-Lieferkette, indem sie Technologiehersteller ermutigen, Sicherheit in jeden Aspekt von Produktdesign und -entwicklung zu integrieren.","Die Einführung eines umfassenden DevSecOps-Ansatzes und die Erstellung und Pflege von Software-Stücklisten (SBOMs) sind wichtige Schritte auf dem Weg zur Anwendung der Secure-by-Design-Prinzipien.","Die Integration von KI in den Software-Entwicklungsprozess kann zudem Entwicklungsprozesse beschleunigen, die Sicherheit verbessern und bei der Behebung von Sicherheitslücken hilfreich sein.","Der Ansatz eines Unternehmens auf dem Gebiet der Cybersicherheit muss sich kontinuierlich weiterentwickeln, da die Angriffsflächen zunehmen und mehr über potenzielle Bedrohungen bekannt wird. Ausgehend von der Erkenntnis, dass Bedrohungen an jedem Punkt der Software-Lieferkette eintreten können, integriert ein Secure-by-Design-Ansatz Sicherheit in die Design-, Programmierungs-, Test- und Bereitstellungsphase der Softwareentwicklung. Als Standard für die Bundesbehörden der USA – und jedes Unternehmen, das mit ihrer Software zu tun hat – haben sich die Secure-by-Design-Prinzipien zu einem Benchmark für die Integration von Sicherheit in den Software-Entwicklungsprozess entwickelt.\n\nIm Laufe der Zeit haben sich die Secure-by-Design-Prinzipien in verwandte Konzepte wie _Secure by Default_ und _Secure by Demand_ weiterentwickelt, bei denen verschiedene Ansätze von Secure-by-Design-Prinzipien im Vordergrund stehen:\n\n- [Secure by Default](#what-is-secure-by-default) verfolgt das Ziel, dass sämtliche Softwareprodukte standardmäßig sicher sind.\n- [Secure by Demand](#what-is-secure-by-demand) erweitert die Secure-by-Design-Prinzipien auf den Beschaffungsprozess.\n\nHier erfährst du mehr über Secure-by-Design-Prinzipien und die erwähnten verwandten Ansätze, darunter auch eine [Schritt-für-Schritt-Anleitung](#building-a-secure-by-design-cybersecurity-strategy), wie Unternehmen ihre Strategien so anpassen können, dass sie ausnutzbare Sicherheitslücken und Angriffe auf die Software-Lieferkette verhindern können.\n\n## Was sind Secure-by-Design-Prinzipien?\nDie US-amerikanische Cybersecurity and Infrastructure Security Agency (CISA) hat im April 2023 ihre [Secure-by-Design-Initiative](https://www.cisa.gov/securebydesign) eingeführt, die sich auf drei wichtige Prinzipien der Softwaresicherheit konzentriert: \n\n1. Verantwortung für die Ergebnisse der Kundensicherheit\n1. Nutzung von radikaler Transparenz und Verantwortlichkeit\n1. Aufbau einer Organisationsstruktur und Führung zur Erreichung dieser Ziele\n\nSecure-by-Design-Prinzipien integrieren Sicherheitsrichtlinien und entsprechende Protokolle in jede Phase des Software-Entwicklungsprozesses. Das bedeutet: Sicherheitsmaßnahmen werden in die Design-, Programmierungs-, Test- und Bereitstellungsphase der Softwareentwicklung integriert und nicht erst im Nachhinein ergänzt.\n\nDas Ziel von Secure-by-Design-Prinzipien ist die Entwicklung einer sicheren Grundlage für Software, und zwar von Anfang an, um Sicherheitslücken und potenzielle Angriffsflächen zu reduzieren.\n\n### Was ist Secure by Default?\nSecure by Default ist ein Teilbereich der Secure-by-Design-Prinzipien. Im Mittelpunkt steht dabei die Sicherstellung, dass jede Software oder Hardware auf ihre sicherste Konfiguration eingestellt ist, ohne dass eine Neukonfiguration durch Benutzer(innen) erforderlich ist. Produkte, die Secure by Default nutzen, aktivieren automatisch die wichtigsten Sicherheitskontrollen, die notwendig sind, um Unternehmen vor unbefugtem Zugriff durch bösartige Akteure zu schützen – so müssen die Benutzer(innen) keine weiteren Schritte unternehmen, um sicherzustellen, dass ein Produkt vor gängigen Methoden des Missbrauchs geschützt ist.\n\nZu den Strategien von Secure by Default gehören die Beseitigung von Standardpasswörtern und die Verpflichtung zu Multi-Faktor-Authentifizierung und Single Sign-On, wodurch gewährleistet wird, dass ausschließlich befugten Benutzer(inne)n der Zugriff auf Ressourcen gewährt wird. Teil dieses Ansatzes sind auch automatische Updates und Patches sowie sichere Konfigurationen für alle Konten und Geräte der Benutzer(innen).\n\n### Was ist Secure by Demand?\nSecure by Demand kombiniert die Secure-by-Design-Prinzipien mit Budgetplanung und Beschaffungsverträgen, um diese als Verpflichtung für Anbieter(innen) und Auftragnehmer(innen) zu fördern. [Der Secure-by-Demand-Guide von CISA](https://www.cisa.gov/resources-tools/resources/secure-demand-guide) bietet eine Reihe von Fragen und Ressourcen, die Softwarekund(inn)en, Käufer(innen) und Beschaffer(innen) nutzen können, um den Cybersicherheits-Ansatz eines potenziellen Anbieters besser zu verstehen. Dazu gehören auch Fragen zu den Authentifizierungsverfahren eines Anbieters, zur Sicherheit seiner Software-Lieferkette und zur Offenlegung und Meldung von Sicherheitslücken.\n\nIndem Unternehmen die Anbieter dazu verpflichten, die Prinzipien und Protokolle von Secure by Design bei ihren Produkten und Dienstleistungen einzuhalten, können sie einen weiteren Beitrag dazu leisten, dass potenzielle Sicherheitslücken nicht in ihre Software-Lieferkette gelangen. Der Secure-by-Demand-Ansatz bietet den Anbietern auch weitere Anreize für eine kontinuierliche Verbesserung ihrer eigenen Cybersicherheitslage.\n\n## Aufbau einer Cybersicherheitsstrategie mit Secure by Design\nUnternehmen messen Secure-by-Design-Prinzipien eine höhere Priorität bei. Zu den Maßnahmen gehören auch die Nutzung von effektiven DevSecOps-Praktiken, die Pflege einer Software-Stückliste (SBOM) und die Integration von KI zur Abwehr von Bedrohungen, die an jedem Punkt des Software-Entwicklungsprozesses eintreten könnten.\n\n### Die Einführung von DevSecOps-Praktiken\nEiner der ersten Schritte zur Unterstützung einer Secure-by-Design-Position ist ein sicherer Software-Entwicklungsprozess: Entwicklung, Erstellung, Sicherung und Bereitstellung von Software unter Verwendung eines umfassenden DevSecOps-Ansatzes.\n\nHeute nutzen viele Entwickler(innen) komplexe Toolsets für die Entwicklung neuer Programme. Eine [aktuelle Umfrage von GitLab](https://about.gitlab.com/developer-survey/) ergab, dass 62 % der Befragten sechs oder mehr Tools für die Entwicklung nutzen und 20 % sogar elf oder mehr – diese Ineffizienz erhöht die Risiken, da auf diese Weise die Anzahl potenzieller Sicherheitslücken zunimmt.\n\nEntwickler(innen) sollten über eine einzige, einfach zu nutzende Bedienoberfläche auf alle Tools zugreifen können, die für DevSecOps-Workflows benötigt werden. Mit einer End-to-End-Lösung wie einer [DevSecOps-Plattform](/platform/) können Unternehmen einen Secure-by-Design-Ansatz implementieren, ohne die Entwickler(innen) zusätzlich zu belasten.\n\n### Entwicklung und Pflege von SBOMs\nTransparenz ist ein weiterer wichtiger Bestandteil der Secure-by-Design-Prinzipien. Unternehmen müssen verstehen, was in ihrer Software enthalten ist, besonders dann, wenn sie Komponenten aus mehreren Quellen enthalten kann.\n\n[SBOMs sind unerlässliche Werkzeuge für die Erreichung dieser Transparenz](https://about.gitlab.com/de-de/blog/the-ultimate-guide-to-sboms/). Sie bieten eine detaillierte Bestandsaufnahme der Softwarekomponenten, darunter auch Details zur Version, Lizenz und Abhängigkeit, was ein größeres Bewusstsein für potenzielle Sicherheitslücken oder bösartigen Code ermöglicht.\n\nDie Pflege dieses Inventars ermöglicht Unternehmen ein umfassendes Verständnis über potenzielle Sicherheitslücken und Risiken, die entstehen könnten, wenn Elemente aus Open-Source-Repositories und lizenzierten Drittanbieter-Komponenten entfernt werden. Eine DevSecOps-Plattform kann [SBOMs automatisch generieren und aktualisieren](/solutions/application-security-testing/), sie in bestehende Workflows integrieren und mit zugehörigen Sicherheitslücken verknüpfen.\n\nViele Unternehmen nutzen heute SBOMs. Allerdings müssen sie dynamisch, mit Sicherheitsscan-Tools verbunden und immer auf dem neusten Stand sein, um ihre volle Wirksamkeit zu erreichen. Wenn SBOMs in Scan-Tools und Dashboards integriert sind, können damit die mit einer Anwendung verbundenen Risiken identifiziert werden. Auch in Fällen, in denen sie nicht notwendig sind, können SBOMs die Compliance mit Sicherheitsvorschriften unterstützen, indem sie die Codesicherheit validieren.\n\n### Der Einsatz von KI in der Softwareentwicklung\nUnternehmen beschäftigen sich mit verschiedenen Möglichkeiten der KI-Nutzung. Softwareentwicklungs-Workflows ermöglichen einen nützlichen Einstieg in die Technologie, die das Potenzial hat, Entwicklungsprozesse zu beschleunigen und die Sicherheit zu verbessern.\n\nUnternehmen aller Branchen beginnen bereits, diese Anwendungen zu erkunden: 39 % der Befragten [in der Umfrage von GitLab](https://about.gitlab.com/de-de/developer-survey/2024/ai/) gaben an, dass sie KI bereits im Software-Entwicklungsprozess einsetzen.\n\nDie Anwendung von KI über den gesamten Software-Entwicklungsprozess hinweg kann Unternehmen dabei helfen, Silos und Backlogs innerhalb von Entwicklungs-Workflows zu vermeiden, die durch die Nutzung von KI entstehen können. KI kann zentrale Funktionen ausführen, wie zum Beispiel:\n\n* Codeerläuterung und Legacy-Code-Refactoring in [speichersicheren Sprachen](https://about.gitlab.com/blog/memory-safe-vs-unsafe/) (nur in englischer Sprache)\n* [Grundursachenanalyse für DevSecOps-Pipelines](https://about.gitlab.com/blog/developing-gitlab-duo-blending-ai-and-root-cause-analysis-to-fix-ci-cd/), die Lösungen für komplexe Probleme beim Testen beschleunigt \n* [Behebung von Sicherheitslücken](https://about.gitlab.com/de-de/the-source/ai/understand-and-resolve-vulnerabilities-with-ai-powered-gitlab-duo/) für einen besseren Abgleich von bekannten Sicherheitslücken und eine sorgfältigere Behebung (nur in englischer Sprache)\n\nJe mehr Entscheidungsträger KI in ihre Arbeitsabläufe integrieren, desto wichtiger ist es, dem Datenschutz und der Datensicherheit Priorität einzuräumen. Ein entscheidender Aspekt der Anwendung eines Secure-by-Design-Ansatzes ist die Entwicklung einer [KI-Strategie, die sensible oder vertrauliche Daten und geistige Eigentumsrechte schützt](https://about.gitlab.com/the-source/ai/building-a-transparency-first-ai-strategy-7-questions-to-ask-your-devops/) (nur in englischer Sprache).\n\n### Was die Zukunft bringt\nDie Secure-by-Design-Prinzipien könnten bald der Standard-Ansatz für die Entwicklung eines vertrauenswürdigeren Software-Ökosystems werden. Die [US-Regierung](https://about.gitlab.com/the-source/security/national-cybersecurity-strategy-a-wake-up-call-for-software-developers/) (nur in englischer Sprache) arbeitet momentan mit Softwareentwickler(inne)n an Rahmenkonzepten, die dem Privatsektor auf gesetzlicher Grundlage Anreize bieten, um Software, die auf Secure-by-Design-Prinzipien basieren, zu produzieren und zu veröffentlichen, was Unternehmen dazu veranlassen soll, mehr in sichere Technologien und Verfahren zu investieren.\n\nDa die Sicherheit von Anfang an in die Softwareentwicklung integriert ist, die Transparenz durch effektive SBOMs gewährleistet wird und die KI den Entwicklungsprozess verbessert, können alle am Software-Entwicklungsprozess beteiligten Personen erfolgreich sein.",{},"/de-de/the-source/security/strengthen-your-cybersecurity-strategy-with-secure-by-design",{"title":455,"description":444,"ogImage":446,"config":456},"Cybersicherheit stärken mit Secure by Design-Prinzipien",{"ignoreDescriptionCharLimit":25},"strengthen-your-cybersecurity-strategy-with-secure-by-design","de-de/the-source/security/strengthen-your-cybersecurity-strategy-with-secure-by-design","eZ59wGdsr9ZucVi48UKaA4-YITzNpb6AqS4nkGY6wgc",1772652047576]