Yapay Zeka Güvenliği : Giriş

Yapay Zeka Güvenliği (AI Security) : Giriş

Cihan Ozhan
13 min readNov 15, 2021

Bu makale halen yazım aşamasındadır : Son Güncelleme (11/16/2021)

İçeriği güncelleyerek olgunlaştırıyorum(anlatacak milyon tane konu var). Önerilerinizi cihan@deeplab.co’ya iletebilirsiniz.

Yazılım, teknoloji ve genel kapsam olarak bilişim sektöründeki en zorlu sorunlardan biri şüphesiz güvenlik ve diğeri de performanstır. Genel olarak her büyük girişim/şirket genel altyapısını geliştirirken ve geliştirdikten sonra en ciddi yatırımı bu iki başlıkta yapar/yapmak zorunda kalır. Bunun nedeni ise bu iki başlığın da çok disiplinli(multidisciplinary) olması, yani hem teknik hem de teorik olarak yüzlerce ve hatta bazen binlerce alt konsept, algoritma, bilgi ve tecrübe ile ilişkili olmasıdır. Şahsen yazılım, veritabanı, yapay zeka gibi girdiğim her başlıkta bu iki konuya ilgim nedeniyle özel olarak odaklanarak performans/güvenlik mantığını anlamaya ve uygulamaya çalışırım. Bu yazı serimde de yapay zeka güvenliğine odaklanacağım.

Karmaşayı Önleme:

Genellikle AI Security dendiğinde yanlış şekilde yapay zekanın güvenlik sektöründe kullanımı gibi anlaşılabilmektedir. Halbuki ikisi de bambaşka konulardır.

AI for Cyber Security : Siber güvenlik sektöründe yapay zeka kullanımını işaret eder. Yani bunda siber güvenlik amacıyla geliştirilen bir ürün/hizmet ya da siber güvenlik sorunu olan bir konuyu yapay zeka ile güçlendirmek kastedilir.

AI Security : Bir yapay zeka altyapısını ve/veya algoritmasının(model) kendine has güvenlik zaafiyetleri vardır(derinliğini hayal bile edemezsin!) ve bu zaafiyetlerin manipüle edilerek kötü amaçlı kullanılamaması için gerekli saldırı ve savunma mekanizmalarını içerir. Yani hedefi yapay zeka altyapısının kendisini korumaktır.

Bu makale haricinde, aynı konuyu işlediğim canlı yayın kaydına şuradan ulaşabilirsiniz.

Ayrıca, yayınladığım bazı AI Security ve AI for Security demo videolarına da şuradan ulaşabilirsiniz:

Girişte de belirttiğim üzere siber güvenlik çok disiplinli ve birçok alanla derinden ilişkili bir başlıktır. Bir de konuya yapay zekayı dahil ettiğimizde süreç çok daha karmaşık hal alıyor. Bu karmaşayı derinlemesine ama özetleyerek anlatmaya çalışacağım. Aksi halde bu derinlikteki bir konunun mantığını doğru aktarabilmek mümkün olamayacaktır.

Bu nedenle, AI Security anlatımımı iki ana başlıkta toplayacağım. Bunlar:

  • AI Infrastructure Security
  • AI Model Security

Bu iki başlığı açıklamaya çalışayım…

  • AI Infrastructure Security

Genel siber güvenlik konularıyla derinden bağlantılı, veritabanı, web, sistem, donanım, mimari ve daha birçok konseptin güvenlik ve geliştirme unsurlarıyla ilişkili olan kısımdır.

Bu başlık AI Engineer’ın ilgi ve uzmanlık alanına girer. AI Engineer ise basit anlamda uçtan uca bir yapay zeka projesinin(model ve altyapı) geliştirilmesi ve production ortamına aktarılarak onun geliştirme, bakım, performans, ölçeklendirme, tracking ve monitoring gibi genel olarak AIOps/MLOps olarak isimlendirdiğimiz süreçlerinden sorumlu olan kişiye denir.

AI Engineer ve AI Security Engineer eğitim programlarımıza katılmak isteyenler:

https://cihanozhan.com/ai

  • AI Model Security

Tamamen yapay zeka modelinin(algoritma) güvenliği ve aldatılması(hacking) üzerine odaklanılan alandır.

Bu başlık geliştirilen yapay zeka modelinin ne tür güvenlik zaafiyetlerine sahip olduğunu, bu zaafiyetlerin hangi tekniklerle ve nasıl manipüle edildiğini ve korunma yöntemlerini içerir. Bu alan AI Infrastructure Security gibi kendi içinde çok derin olmakla birlikte, mantıksal ve teknik sınırlamalar nedeniyle kesin çözüm yolları henüz olmayan zaafiyetleri de içerir(%100 güvenlik yoktur). Ancak bu zaafiyetlerin de korunma yöntemleri hem araştırılmakta hem de farklı teknoloji ve yazılım teknikleri kullanılarak minimize edilebilmektedir.

Kısaca ‘Hakkımda’ (doğrudan konuya geçmek isteyenler burayı atlayabilir)

2000'lerin başında hacking/güvenlik çalışmaları ile bilişim çalışmalarıma başladım. Güvenlik araştırmalarına olan ilgim nedeniyle kullandığım güvenlik araştırma tekniklerinin alt başlıklarını derinlemesine incelemeye çalıştım. Uzun süre bu teknikler(OWASP, Data Security vb.) ile güvenlik odaklı çalışmalarla uğraştıktan sonra bu teknikleri daha derinlemesine anlamak için biraz daha derine inerek yazılım/veritabanı/yapay zeka odaklı çalışmalara doğru ilerledim ve o günden beri hem yazılım/veritabanı hem de bu başlıklarda güvenlik/performans çalışmalarımı paralel olarak ilerletiyorum. Yani hem bu alanlarda ürün/proje geliştiriyorum hem de güvenlik/performans benim için varsayılan paketteki birer çalışma alanlarıdır.

Bu güvenlik odaklı merak nedeniyle yaptığım yazılım araştırmalarının sonucu olarak 2010'da Türkiye’nin ilk ‘Oracle Veritabanı Programlama’ kursunu, 2013/Mart’da SQL Server üzerine ‘İleri Seviye T-SQL Programlama’ kitabımı yayınladım ve yıllardır da C#, Python ve Go üzerine hem ileri seviye programlama hem de kurumsal olarak ‘Secure Application Development’ eğitim/danışmanlıkları vermekteyim.

Siber Güvenliğe Genel Bakış

Yapay zeka güvenliğine girmeden önce genel olarak Siber Güvenlik başlığı ve altındaki mantığı anlamak gerekiyor. Bu kısmı çok hızlı geçeceğiz.

Siber güvenlik(IT Security) genel bir kapsayıcı başlıktır ve altında birçok ana başlık barındırır. Bunlardan bazıları:

  • Web Security
  • Database Security
  • Network Security
  • System Security
  • Application Security
  • Hardware Security

Tabi ki bunlar çok genellenmiş ve en yaygın ihtiyaç duyduğumuz başlıklar. Bu başlıkların bolca alt dallanması mevcut. Ayrıca son yıllarda bu başlıklara iki tane daha eklendi:

  • Blockchain Security
  • Artificial Intelligence Security

Eğer iş, rol ve uzmanlıklara göre dallanmalara girersek daha birçok başlık çıkabilir. Mesela üzerinde yıllardır çalıştığımız otonom sistemler alanında da güvenlik odaklı uzmanlaşmalara ihtiyaç var…

  • Autonomous Systems Security
  • Self-Driving Car Security
  • Autonomous Factory Security (Industrial Security)
  • Smart Home Security
  • Smart City Security

Üstteki konulara meraklı olanlar için:

Makale : Blockchain Uygulama Başlangıç Rehberi
Makale :
Endüstri 4.0 Başlangıç Rehberi
Makale :
Akıllı ve Otonom Sistemler (2015'de yazıldı, 2016'da paylaşıldı)
Makale :
Akıllı Otomobiller ve Etkileri (2015'de yazıldı, 2016'da paylaşıldı)
Video :
Endüstriyel Yapay Zeka ve Otonom Araçlar
Presentation :
Endüstriyel Yapay Zeka ve Otonom Sistemler

gibi… Ancak konuyu çok dağıtmadan sadece web odaklı bir yaklaşım hakkında bilgi verip geçeceğiz:

OWASP (Open Web Application Security)

OWASP organizasyonu benim güvenlik çalışmalarıma başladığım 2001 yılından beri var ve çok faydalı işler yaptı/yapıyor. Temel amacı web uygulama/projelerinde karşılaşılan güvenlik risklerini derleyip, toparlayıp belli aralıklarla rapor ve sıralamalar ile sunmaktır. Sadece istatistiki bilgiler değil, onun haricinde korunma yöntemlerini de teknoloji bağımsız(technology-agnostic) şekilde de anlatmaktadır.

OWASP (Wikipedia) : https://en.wikipedia.org/wiki/OWASP

Ve ayrıca kuruluşundan beri OWASP Top 10 adında bir liste yayınlar. Bu liste birkaç yılda bir güncellenir. Bu listeye de ulaşmak için:

OWASP ve yazılımcı odaklı güvenlik konusunda meraklı olanlar için birkaç kaynak:

Video : Yazılımcılar İçin Veri Güvenliği Temelleri (Giriş)
Presentation :
Temel Veri Güvenliği Unsurları
Presentation :
OWASP
Presentation :
Yapay Zeka Güvenliği (Turkish Version)
Presentation :
AI Security (English Version)

Yazılım/AI güvenliği ve bunların birbiriyle ilişkisinin derinliği konusuna yazılım odaklı birkaç örnek vermek gerekirse:

1 — Veritabanı sistemleri ve altında çalışan işletim sistemleri SQL ile manipüle edilebilir.

SQL sorgularıyla konfigürasyon hatası ya da güvenlik zaafiyeti olan veritabanı/veritabanı sunucuları ya da altında çalışan işletim sistemleri hacklenebilir. Çünkü gelişmiş SQL sunucuları işletim sistemi komutlarını da çalıştırabilme yeteneğine sahiptir.

Üstteki kod genele açık paylaşılan kitabımın güvenlik bölümünün kodlarıdır. Kod örneklerinde SQL üzerinden(SQL Injection ile) işletim sistemine ulaşarak IP/PORT ya da sunucu adı gibi bilgiler elde edilebilinir, işletim sistemi üzerinde kullanıcı/yetkilendirme işlemleri yapılabilir, sunucu işletim sistemine SQL ile format atılabilir, sunucu kapatılabilir(IIS ya da web server), sunucunun ağındaki fotokopi ve kahve makinesi bile hacklenebilir... Tabi ki bunlar yapılırken ilgili veritabanında bulunan veriler istenildiği gibi değiştirilebilir/silinebilir. SQL üzerinden işletim sistemine ulaşabiliyorsanız OS üzerindeki dosyalara(AI projenizin veri setleri/AI model/ayar&parametre dosyaları dahil) da erişilebilir demektir.

Ayrıca, veritabanını sadece veri kaydetmek için kullanmıyoruz. Bir DB’de tutulan milyonlarca/milyarlarca veri ilgili uygulama ayakta kaldığı yıllar boyunca bu veritabanındaki güvensiz(güvenlik odağıyla filtreden geçirilip kontrol edilmemiş) tüm verileri sürekli olarak kullanır. Yani yıllar önce veritabanına eklenmiş zararlı bir veri satırını siz vakti geldiğinde yapay zeka uygulamanız için öğrenme verisi olarak kullanarak kendi kendisini zehirlemesine(data poisoning) sebep olabilirsiniz.

2 — Bir programlama dili ve altyapısı kullanılarak bir uygulama/dll hacklenebilir ve değiştirilebilir.

Bu senaryoda uygulama kaynak kodunuza erişim sağlanarak hem veri kaynağınız, veri yollarınız, hem de AI pipeline/MLOps altyapınız hacklenerek değiştirilebilir. Ayrıca bu, hacklenen uygulama sisteminiz üzerinden erişim olan tüm Online Machine Learning(Realtime Learning) altyapınız da manipüle edilebilir anlamına gelir. Zorlu olsa da olası(ve karşılaştığımız) senaryolardan biri de sunucu sistemlere erişildikten sonra ilgili assembly dosyalarının(güvenlik imzasız) runtime’da decompile edilip, sonrasında kodlarda istenen manipülasyonlar yapıldıktan sonra tekrar runtime’da compile edilerek ilgili sistemin çalışma mekanizması değiştirilebilir. Yani profesyonel bir hacking saldırısında ML pipeline’ını değiştirmek bile olası senaryolardan biri olabilir.

Runtime’da kod decompile etmenin mantığını anlamak için:

- c-sharpcorner.com/UploadFile/84c85b/using-reflection-with-C-Sharp-net/
-
c-sharpcorner.com/uploadfile/puranindia/reflection-and-reflection-emit-in-C-Sharp/

Konu başlıkları ‘Reflection’ ve ‘Reflection.Emit’

ML/DL projelerinde Python çok sık kullanıldığı için bu dile özel olarak odaklanmak faydalı olabilir.

Python ile ilgili şuradan başlayabilirsiniz:

-
www.python.org/dev/security/
-
snyk.io/blog/python-security-best-practices-cheat-sheet/
-
py.checkio.org/blog/how-to-write-secure-code-in-python/
-
securecoding.com/blog/python-security-practices-you-should-maintain/

Open source synk yazılımını da güvenlik amacıyla incelemenizi öneririm.

Sık kullandığım programlama dilleri Go, Python, Rust ve C#. Bu doğrultuda .NET odaklı bir inceleme dökümanı paylaşıyorum.

.NET odaklı bir kaynak: https://res-4.cloudinary.com/eventpower/image/upload/v1/19ncs/presentation_files/sao3ktg3tjrhairwd7hb.pptx.pdf

C# ile ilgili şuradan başlayabilirsiniz:

- https://snyk.io/blog/snyk-code-security-scanning-c-sharp-dot-net/
-
https://www.microsoft.com/en-us/securityengineering/sdl/practices

Yukarıda bahsettiğim programlama dillerinden Go, Rust ve C# varsayılan olarak ‘güvenlik odağıyla’ tasarlanmıştır. Bunlar arasındaki güvenlik odaklı derin analizlere girmeyeceğim, ancak genel olarak üçü de çok güçlü dil tasarımına sahip. Ben genellikle büyük çaplı projelerde back-end olarak Go’yu, ancak networking, yüksek güvenlik ya da performans odaklı proje ya da ilgili projenin ilgili parçalarında Rust’ı tercih ediyorum. Ancak genel anlamda Go hem back-end hem de ML/DL modellerini sorunsuz, sağlıklı ve yüksek performans ile geliştirebileceğiniz bir dil.

Go ile ilgili de şuradan başlayabilirsiniz:

- https://github.com/OWASP/Go-SCP
-
https://golang.org/security
-
https://snyk.io/blog/go-security-cheatsheet-for-go-developers/

Rust da yüksek güvenlik ve performans sağlaması nedeniyle sektörün belli/niş bir kesiminde sıkı projelerde kullanılıyor. AI odaklı projelerde Go ve Rust’ın yükselişinin engellenemez olduğunu düşünüyorum.

Son olarak Rust ile ilgili birkaç kaynak:

- https://www.rust-lang.org/policies/security
-
https://github.com/rust-secure-code/projects
-
https://anssi-fr.github.io/rust-guide/

Maalesef ister web ister mobil ya da AI olsun, güvenlik sorunlarının temelinde genellikle geliştiricinin ilgili teknoloji/programlama diline hakim olmaması ve onun güvenlik ile ilgili bakış açısı ve derinliğini bilmemek yatıyor. Bu farkındalığa dikkat çekmek için özellikle her dil için birkaç başlangıç kaynağı verdim. Genel olarak araştırmalarınızı ‘Secure Application Development’ ya da ‘Secure Coding’ şeklinde yapabilirsiniz.

3 — OWASP(web, mobil vb.) odaklı ve bunun dışındaki yüzlerce kritik güvenlik zaafiyetiyle yapay zeka uygulama mimarisinin doğrudan hedef alınarak karar mekanizmalarının manipüle edilmesi.

Birçok güvenlik araştırmacısı ya da yazılımcısı güvenlik zaafiyetlerinin OWASP ile sınırlı olduğunu düşünebiliyor ve bu çok yaygın bir hata…

Güvenlik zaafiyetlerini genelleştirmek gerekirse %50/%50 şeklinde back-end ve front-end kaynaklı olmak üzere ikiye ayırabiliriz. Bu durumda sadece veritabanı ya da back-end’de geliştirilen yazılım değil, aynı oranda front-end’e de önem vermeyi gerektiriyor. Kaldı ki son yıllarda geliştirilen JavaScript(TensorFlow.js gibi) ile client-side ML/DL projeleri hiç azınsanacak gibi değil. Haliyle client-side için geliştirilen algoritma ve sunulan servisin manipülasyonlara karşı korunması back-end kadar önemli.

Online Machine Learning (Realtime ML) : Production ortamındayken elde edilen anlık/güncel veriyle mevcut verisetlerindeki veriyi birlikte kullanarak yapay zeka modelinin öğrenme sürekliliğini sağlama tekniği/yöntemi/altyapısına denir.

Wikipedia : https://en.wikipedia.org/wiki/Online_machine_learning
Medium :
https://medium.com/value-stream-design/online-machine-learning-515556ff72c5

Yapay Zeka’ya Genel Bakış

Son yıllarda yapay zekanın yükselişi geçmiş onlarca yıldan çok daha yüksek hızla devam ediyor.

Yapay zeka ile ilgili hızlandırılmış bir rehber arayanlar için :

Video : Yapay Zeka Başlangıç Rehberi (5.5 Saat)

Ayrıca şu makaleden de bilgi alabilirsiniz:

Makale : Yapay Zeka’ya Başlangıç Rehberi

Yapay zeka ile ilgili çalışma yapmayanlara öncelikle üstteki rehberi izlemelerini öneririm. Yapay zeka’da güvenlik bakışını anlamak için öncelikle konsepti doğru anlamalı…

Püf Nokta : ‘Algoritmaların Öğrenmesi’

Veri ve sistem olarak isimlendirilen herşey hacklenebilir.

Model

Machine Learning/Deep Learning projelerinde öğrenen algoritma olarak tanımladığımız şey modeldir.

ML Model = ML Algoritma

TensorFlow/Keras ile kodlanmış örnek bir model(MNIST).

MNIST modeli ve kod örneği hakkında daha fazla bilgi için:

https://www.tensorflow.org/tutorials/quickstart/beginner

https://colab.research.google.com/github/tensorflow/docs/blob/master/site/en/tutorials/quickstart/beginner.ipynb

Öncelikle production ortamındaki bir yapay zeka projesini analiz etmeye ve olası güvenlik sorunlarının alt mantığını anlamaya çalışalım.

Production ortamındaki bir ML kodu.

Gerçek bir yapay zeka ürün/hizmeti geliştirirken farkına varılan ilk konu, aslında yapay zeka algoritmasının(model) genel yazılım, BigData ve Data Engineering mimarisi içinde çok küçük bir yer tuttuğudur. Bu üstte gördüğünüz Google’ın 2015 yılında yayınladığı dökümandaki görselde işaret edilen ML Code alanıdır. O dönem ML Code projenin %5'lik kısmı gibi tanımlanırken günümüzde bu en fazla %2'lik kısmı oluşturabilir. Bunun nedeni AI Infrastructure/Architecture içerisindeki AI altyapısını yönetme ve ayakta tutmak amacıyla kullandığımız yazılım odaklı ürün ve hizmetlerin çoğalmasıdır.

Yukarıda bahsettiğim “Hidden Technical Debt in Machine Learning System” dökümanını incelemek için:

https://papers.nips.cc/paper/2015/file/86df7dcfd896fcaf2674f757a2463eba-Paper.pdf

Machine Learning Model Lifecycle

Yazılım ve sistemin olduğu her aşamada bir lifecycle söz konusudur. ML/DL algoritmalarımız için de durum benzer.

ML Model Lifecycle

ML Model Lifecycle’ını biraz daha açıklamak gerekirse…

Model ve Lifecycle’da değişken ve göreceli birçok tanım ve konu var. Ancak genel mantığı üstteki açıklama ile yapabiliriz.

Verinin hazırlanması, eğitim süreci, modelin paketlenmesi, doğrulanması, deploy edilmesi ve sonrasında monitoring süreçleri. Bu lifecycle görseli bir modelin en ilkel yaşam döngüsünü temsil etmektedir. Projenin hedeflemesi, büyüklüğü gibi birçok kriterle bu döngünün karmaşıklığı da artmaktadır.

Bir Machine Learning Projesinin Yayınlanması

ML projesinin yayınlanma süreci genel olarak bir web ya da mobil uygulamanın deployment süreçleriyle benzerlik gösterir. Fakat kritik bazı farkları mevcut.

martinfowler.com

Yukarıda neredeyse geliştirilme sürecinden production’a kadar ki bir süreci görüyorsunuz. Ve tabi ki bu süreçlerin her birisinden sorumlu uzmanlıklar mevcut. Genel olarak uçtan uca sistem tasarlama/geliştirme konusunda AI Engineer’lar görev alabilse de, geniş ekiplerde bu süreçler farklı uzmanlıklara dağıtılmıştır. Aşağıda buna bir örnek görebilirsiniz.

martinfowler.com

Data Engineer kavramını bu görselde doğru anlamak zor olabilir. Kendisi veri etiketlemekten sorumlu değildir. :) Bu kişinin görevini basit bir algoritma ile anlatayım:

Data Engineer = (DevOps+AI)

İlgili kişinin AI konusunda uçtan uca uzman olması gerekmez. Sadece AI projesinin model ve production konularında genel bir bilgi sahibi olan DevOps şahsiyeti olması beklenir.

Yapay Zeka, Veri ve Güvenlik İlişkisi

Belirttiğimiz üzere yapay zeka uygulamalarının kendine has bazı güvenlik zaafiyetleri var. Bunlardan bazılarını şu şekilde görselleştirebiliriz.

Intentionally Failures
Unintended Failures

Bu güvenlik zaafiyetleriyle bir yapay zeka sisteminin vereceği karar değiştirilebilir, geliştirilen bir model hacker’lar tarafından ele geçirilebilir, ML sisteminin kurgusu/mantığı manipüle edilerek değiştirilebilir, AI altyapısı çökertilebilir, eğitim amaçlı kullanılan veriler manipüle edilerek hatalı/yanlı sonuçlar üretilmesi gibi birçok kötü amaçlı senaryo oluşturulabilir.

Bu güvenlik zaafiyetlerini zaman içerisinde ayrı ayrı ele alarak anlatmayı planlıyorum. Maalesef her biri tek bir makaleye sığamayacak kadar detaylı…

Şimdi veri türleri kısmına detaylıca bakalım…

AI projelerinde çeşitli veri türleri üzerine çalışıyoruz. Şimdi bu veri türleri ve olası güvenlik sorunlarını irdeleyelim.

Yapay zeka’da geliştirilen modellerin eğitimi için kullandığımız veri türleri:

  • Text
  • File
  • Image
  • Voice
  • Video
  • 3D Object
  • Frequency
  • Data

Ana veri türlerimiz yukarıdaki gibi, bunların birçok alt çalışma alanı mevcut. Örneğin bir oyun ya da simülasyon üzerinden AI çalışması yapabilirsiniz ama bu image/video/voice ve hatta text kategorisinde değerlendirilebilir. Simülasyon içindeki sesler ile çalışacaksanız voice, akan(stream) bir görsel veri(frame’ler) üzerinden çalışacaksanız video ya da 3-Boyutlu bir fiziksel/sanal nesne üzerinde çalışacaksanız 3D Object kategorisinde değerlendirilebilir. Bu senaryoyu tüm sektörlere uyarlayabilirsiniz. Sağlık alanında MR cihazlarından alınan görüntü verileri(image, video) üzerinde çalışmanın kedi/köpek tanıyan bir AI projesinden tek farkı domain(tıp bilgisi) uzmanlığı bilgisidir.

Buraya kadar veri türlerinden ve mantığından bahsettik, ama neden?

Bunun nedeni dijital olan her varlığın(aslında fiziksel olanların da) güvenlik zaafiyetleri mevcut. Mesela yapay zeka’dan bağımsız olarak yıllardır bir resim, video ya da ses dosyasını manipüle etmek ya da onu bilgisayarına/ara belleğe indiren bilgisayarları hackleyebilmek amacıyla gürültü(noisy) verisi(zehir de denebilir) ekleyebiliyoruz. Bu konuyu incelemek isteyenler Steganography’den başlayabilir:

Steganography : Steganography is the practice of concealing a message within another message or a physical object. In computing/electronic contexts, a computer file, message, image, or video is concealed within another file, message, image, or video.

Wikipedia : https://en.wikipedia.org/wiki/Steganography
Comptia :
https://www.comptia.org/blog/what-is-steganography

Video format odaklı kaynaklar:

Görüntü ve Ses Odaklı Saldırılar

Görüntü verileri üzerinde computer vision ve yapay zeka odaklı çalışmalar onlarca yıldır hayatımızda. Sağlıktan eğitime, bilgisayarımızdan akıllı telefonumuza, insansız otomobillerden askeri sistemlere kadar her yerde çok kritik rol oynamaktadır. Peki bu alandaki güvenlik sorunları üzerine çalışıyor muyuz?

Bazı Adversarial Attack örnekleri…

Adversarial Attack : Image (https://adversarial.io/)
Adversarial Attack : Speech-to-Text (https://people.eecs.berkeley.edu/~daw/papers/audio-dls18.pdf)

NLP Odaklı Saldırılar

Benzer saldırı senaryoları Machine Learning’in alt başlıklarından biri olan Doğal Dil İşleme(NLP)’yi de hedef alabilmektedir.

Adversarial Attack : NLP
https://arxiv.org/pdf/2005.05909.pdfhttps://github.com/QData/TextAttack

Frekans verileri de savunma, tıp, günlük hayat ve daha birçok ileri seviye amaçla yapay zekada kullanılmaktadır. Peki bir frekans nasıl hacklenir ya da bu mümkün mü?

Aslında frekans konusu çok daha derin... Evrende insan dahil herşeyin kendi frekansına sahip olduğu ve frekanslar ile çalıştığını düşünürsek, bu alanda hem AI odaklı ürünler geliştirerek fayda sağlama, hem de bu frekansların ve AI projelerinin kötü amaçlı manipüle edilerek bireysel ve kitlesel sorunlara sebep olması mümkün.

Frekans, evren, insan ve doğal yaşam arasındaki bağlantıyı anlamak isteyenler için birkaç kaynak:

Yüzbinlerce araştırma içinden sadece birkaç kaynaktan görüldüğü üzere sinyal/frekanslar insan beyni/duygularından evinizdeki ev aşyalarına, akıllı otomobillerden uzaydaki uydulara kadar heryerde mevcut ve bunlar üzerinde hem yazılım hem de yapay zeka odaklı çalışmalar yapılabilmektedir. Yazılım ve yapay zekanın olduğu yerde bunların güvenliğinin önemi de tartışılmaz hal almaktadır.

İyi çalışmalar.
Cihan Özhan

--

--