Yapay zekaya yazdırılan xenforo eklentileri ne kadar güvenli?

Arkadaşlar XF'ye tema yazdırırken nasıl prompt kullanıyorsunuz 4 farklı model denedim başaramadılar.
Ben forum için henüz kullanmadım hatta kullanmayı düşünmüyorum. Bazen işi olması gereken şeye bırakmak gerekiyor diye düşünüyorum. Forum sayfam oturmuş ve ciddi trafik alan bir yapısından ötürü hataya yer olmayacağından henüz kullanma cesareti elde edemedim. Yaptırmak istediğim Mobil uygulama kısmı var ama henüz onda bile emin değilim.
 
Default temayla biraz oynadım codex'te, bilmiyorum sonucu beğendim ben.

 
Arkadaşlar XF'ye tema yazdırırken nasıl prompt kullanıyorsunuz 4 farklı model denedim başaramadılar.

Birçok kişi sağdan soldan duyarak buna yöneliyor Yapay zeka XenForo'nun şablon sözdizimini (template syntax), LESS/CSS yapısını ve mantığını algılar. Ancak XenForo'da tema geliştirmek sıradan bir HTML/CSS sitesi kodlamaktan çok farklı dinamiklere sahiptir. PAGE_CONTAINER, thread_view veya post_macro gibi standart şablonlara eklenecek <xf:if> <xf:foreach>veya <xf:macro> etiketli yapıları na müdahale bu mimariye aşina olmayan birinin yapay zeka bilir deyip bu hataya düşmesi xf nin İç İçe Geçmiş Şablon Hiyerarşisi yüzlerce şablonun birbirini çağırdığı <xf:include> <xf:macro> modüler bir mimariye sahiptir. Yapay zekanın tüm bu hiyerarşiyi tek seferde zihninde tutup sıfırdan uyumlu bir tema seti üretmesi bağlam sınırı ve mimari karmaşıklık nedeniyle kendi içinde sorgu güvenlik riskine neden olur Yapay zekanın en sık yaptığı hata XenForo'nun yerleşik güvenlik filtrelerini baypas etmesi ki buna değmez biraz empati yapıp xf nin kod kütüphanesini incelerseniz kendi temanız da eklentinizi de yazarsınız.
 
Birçok kişi sağdan soldan duyarak buna yöneliyor Yapay zeka XenForo'nun şablon sözdizimini (template syntax), LESS/CSS yapısını ve mantığını algılar. Ancak XenForo'da tema geliştirmek sıradan bir HTML/CSS sitesi kodlamaktan çok farklı dinamiklere sahiptir. PAGE_CONTAINER, thread_view veya post_macro gibi standart şablonlara eklenecek <xf:if> <xf:foreach>veya <xf:macro> etiketli yapıları na müdahale bu mimariye aşina olmayan birinin yapay zeka bilir deyip bu hataya düşmesi xf nin İç İçe Geçmiş Şablon Hiyerarşisi yüzlerce şablonun birbirini çağırdığı <xf:include> <xf:macro> modüler bir mimariye sahiptir. Yapay zekanın tüm bu hiyerarşiyi tek seferde zihninde tutup sıfırdan uyumlu bir tema seti üretmesi bağlam sınırı ve mimari karmaşıklık nedeniyle kendi içinde sorgu güvenlik riskine neden olur Yapay zekanın en sık yaptığı hata XenForo'nun yerleşik güvenlik filtrelerini baypas etmesi ki buna değmez biraz empati yapıp xf nin kod kütüphanesini incelerseniz kendi temanız da eklentinizi de yazarsınız.
aslında bizlerin söylediği şey aşağı yukarı aynı. Yani ne yapacağını ve nasıl yapacağını söylediğin vakit gerisi bir şekilde oluyor.

Buna basit bir örnek. XXX temasının dosyasını iletip bu temayı analiz ederek mevcut yapısına uygun gelecek şekilde yeni bir tema istiyorum komutundan sonra geri kalan kısım hayal gücüne kalmış oluyor. Zaten doğrudan; selam bana Xenforo teması yap diye giriliyorsa zaten bir yerde patlak verir.

Bu arada hazır bir site mimarisinin dosyasını yükleyip analiz ettirmek 2,3 dakika sürmüyor. Bugün koca şirkette yer alan yazılımcıların hiç biri saf organik değil diyebiliriz; herkes en kötü bir yerinden bu araçlardan destek alıyor. Ben çoğu işler için ideal "zaman ve maliyet" olduğunu düşünüyorum.

Lakin bazı durumlarda abartmamak gerekiyor :) Misal Xenforo Türkiye topluluğu gibi yapıların ayakta kalabilmesi adına bazı şeyleri satın almak kullanmak daha doğru. En kötü ben öyle olmasının daha doğru olacağını düşünüyorum.
 
Çok fazla anlamam ancak deneyımledıgım ve gördüğüm kadarıyla doğru malzeme doğru anlatım doğru promtlarda AI nın çok oyle aman aman yapamayacagı bir iş yok gibi ki daha bu evredeyken hemde, oyle tema yap eklentı yap onlar komik seyler seyler aı ıcın. bir geliştirici yorgun olur bir şeyi atlar ınsanlık halı normal bir durum aı de boyle bir seyde yok, sıfırdan temada yaptırdım sıfırdan eklentide yaptırdım, pleskte oturum acıp sunucu ayarına varana kadar yaptırdım, forumda bi yavaslık sorun aşırı yük olursa bana mail at dedım onuda yaptı hepsini profesyonel bir sekılde yaptı.

AI cıktıgından berı globalde günlük 5-6 eklenti yayınlanmaya basladı :D tema olayını daha keşfedemedi millet onunda eli kulağında :)
 
Çok fazla anlamam ancak deneyımledıgım ve gördüğüm kadarıyla doğru malzeme doğru anlatım doğru promtlarda AI nın çok oyle aman aman yapamayacagı bir iş yok gibi ki daha bu evredeyken hemde, oyle tema yap eklentı yap onlar komik seyler seyler aı ıcın. bir geliştirici yorgun olur bir şeyi atlar ınsanlık halı normal bir durum aı de boyle bir seyde yok, sıfırdan temada yaptırdım sıfırdan eklentide yaptırdım, pleskte oturum acıp sunucu ayarına varana kadar yaptırdım, forumda bi yavaslık sorun aşırı yük olursa bana mail at dedım onuda yaptı hepsini profesyonel bir sekılde yaptı.

AI cıktıgından berı globalde günlük 5-6 eklenti yayınlanmaya basladı :D tema olayını daha keşfedemedi millet onunda eli kulağında :)

@gecitli bu konuda haklı maalesef. XenForo ve Vbulletin hatta Discourse için bile özellikle vbulletin temasını yapay zekaya öyle düz şekilde prompt verip giydiremezsiniz. İmkanı yok. Temayı yapar entegre etmek için takılır kalırsınız hocam. Şablonlar üzerin de ilerlemek gerekiyor. AI'nin çıkardığı düz XML dosyasının hiçbir faydası yok.

Herkesin herşeyi bilmesi bazen iyi birşey değil aslında. Yarın öbür gün bundan belki 5 sene sonra girdiğimiz bir çok web sitesi AI ile yapılmış saçma sapan temalardan/tasarımlardan oluşmuş olacak. Herşeyi yapay zekaya bırakmamak gerekiyor. Web sitelerin kendine has özgünlüğü ve bir mottosu olmalı.


Son günler de R10 'da görüyorum '' AI ile web site yaptım nasıl olmuş? '' konularını. Açıp bakmam ile kapatmam bir oluyor. Burada şuna da yer verelim kesinlikle yadırgamıyorum tabiki kimse 4/4lük değil fakat, bu tarz durumlarda bilgi sahibi olmadan da sahaya sürmenin iyi birşey olmadığını dile getirmek istiyorum aslında. AI prof derece de tasarım ve yazılım yapıp hatasız olarak al kullan demiyor asla bu hataya düşmeyin sakın. Bazı zamanlar da çok fazla açık var bilginiz olsun.

Beni aslında bu konuda motive eden XenGenTR 'de öğrendiklerim. Ve aklım hala yapamadıklarım da. Hepsi sırayla gelecek inşallah.
 
Son düzenleme:
Bence mesele AI kötü kod yazar mı değil, yazılan kodun güvenli olup olmadığını kimin kontrol edeceği. Kod bilmeyen biri çıktıyı okuyamıyor, güvenlik açıkları da sessiz hatalardır. Sayfa açılır, form çalışır, eklenti sorunsuz görünür, açık ise aylarca orada bekler. Yani çökmedi, hata vermedi işlevsellik kanıtıdır, güvenlik kanıtı değildir.

@gecitli 'nin XenForo'nun iç içe şablon yapısı ve yerleşik filtreleri hakkında söyledikleri de tam burada devreye giriyor. (Bende katılıyorum) AI'nın en sık düştüğü hata, çalışan en kısa yolu seçip bu filtreleri atlaması. Bunu somut bir örnekle anlatayım.

Güvensiz sorgu (AI'nın sık ürettiği tür):


SQL:
$db = \XF::db();
$rows = $db->fetchAll("SELECT * FROM xf_user WHERE username = '$name'");

Burada $name kullanıcıdan geliyorsa ve bir eklenti formundan ya da URL parametresinden alınıyorsa, biri şunu yazdığında:

SQL:
' OR '1'='1

sorgu şuna dönüşür:

SQL:
SELECT * FROM xf_user WHERE username = '' OR '1'='1'

Yani bütün üyeler dönebilir. Daha kötü varyantlarda veri okunur, değiştirilir ya da silinir. Eklenti ekranda gayet normal çalışır, açığı kimse fark etmez.

Güvenli hali:

SQL:
$rows = $db->fetchAll('SELECT * FROM xf_user WHERE username = ?', $name);

ya da daha doğrusu XenForo'nun kendi yapısıyla:

SQL:
$user = \XF::finder('XF:User')->where('username', $name)->fetchOne();
İki kod da aynı sonucu verir, ama biri açık, biri güvenli. Kod bilmeyen birinin bu farkı görme şansı yok. Aynı mantık şablonda |raw ile veri basmak (XSS), form işlemlerinde CSRF ve yetki kontrolünü atlamak, dosya yüklemede tür kontrolü yapmamak gibi yerlerde de geçerli.

Başka bir AI'a test ettirmek hiç yapmamaktan iyi ama yeterli değil, çünkü modellerin kör noktaları benzer olabiliyor. Asıl güvenlik; canlı foruma almadan önce test ortamında denemek, mümkünse XenForo'yu bilen birine kod incelettirmek, statik analiz araçları kullanmak, yetkileri minimumda tutmak ve düzenli yedek almak. Eklentinin ne yaptığı da belirleyici.. Salt okunur bir widget ile ödeme, üyelik ya da dosya yükleme yapan bir eklenti aynı risk sınıfında değil.

Sonuç olarak AI, bilen birinin elinde müthiş bir hızlandırıcı. Bilmeyen birinin elinde ise sadece kendi yazdığını doğrulayamadığı bir kara kutu. Satışa çıkarılan eklentilerde AI ile yazıldı bilgisinin belirtilmesi gerektiğini bu yüzden söylüyorum, çünkü alıcı riski bilerek karar vermeli. AI kötüdür demiyorum, doğrulama yeteneği olmadan risklidir diyorum.

Yazılımcı olmanın avantajı tam da burada ortaya çıkıyor. Kod bilen biri AI'dan gelen çıktıya çalışıyor mu diye değil, neden böyle yazmış diye bakıyor. Bu farkı üç noktada görüyorum:

1. Hatayı görebilmek. Yukarıdaki SQL örneğini bilen biri ilk bakışta $name ifadesini fark eder ve düzeltmesini ister. Bilmeyen biri aynı kodu sorunsuz çalışıyor diye canlıya alır.

2. Doğru soruyu sorabilmek. Bilgili biri bana eklenti yaz demez. Bu sorguyu prepared statement ile yaz, kullanıcı girdisini filter() ile doğrula, yetki kontrolünü canView ile yap, CSRF kontrolünü ekle der. AI aynı model olsa bile, istenen şey netleşince çıktının kalitesi ciddi biçimde değişiyor. Yani prompt'un kalitesi, kişinin bilgisiyle doğru orantılı.

3. Hata çıktığında çıkış yolunu bilmek. AI bir noktada tıkanır ya da kendi yazdığı kodu bozar (@eTiKeT™ 'in anlattığı gibi). Kod bilen kişi hatayı kendisi bulup düzeltir. Bilmeyen kişi aynı AI'a düzelt demekten başka çare bulamaz ve her seferinde yeni bir risk ekleyebilir.

Kısacası AI, yazılımcının elinde bir çarpan, bilmeyenin elinde ise bir vekâlet. Birinde bilgiyi hızlandırıyor, diğerinde bilgi eksikliğini örtüyor. Yazılımcılığın değeri AI ile azalmıyor, tam tersine çıktıyı denetleyebilen kişi daha da kıymetli hale geliyor. Bunu neden söylüyorum; Eğer siz yazılım ile bir şeyler üretmeyi seviyorsanız elinizde mükemmel bir araç var; AI. Yazılımı öğrenebilmek için gözlerimize buz koyduğumuz dönemlerden AI, online eğitimler, kurslar vs çok daha kısa zamanda öğrenebileceğiniz dönemlerdeyiz. Dolayısıyla kendinize yatırım yaparak, yanınıza da AI gibi bir yardımcı araç alarak harika işler yapabilirsiniz. Kullanmayın demiyorum, dibine kadar kullanın ama ne yaptığını bilin diyorum!
 
Kişiselleştirme

Tema editörü

Ayarlar Renkler

  • Mobil kullanıcılar bu fonksiyonları kullanamaz.

    Alternatif header

    Farklı bir görünüm için alternatif header yapısını kolayca seçebilirsiniz.

    Görünüm Modu Seçimi

    Tam ekran ve dar ekran modları arasında geçiş yapın.

    Izgara Görünümü

    Izgara modu ile içerikleri kolayca inceleyin ve düzenli bir görünüm elde edin.

    Resimli Izgara Modu

    Arka plan görselleriyle içeriğinizi düzenli ve görsel olarak zengin bir şekilde görüntüleyin.

    Yan Paneli Kapat

    Yan paneli gizleyerek daha geniş bir çalışma alanı oluşturun.

    Sabit Yan Panel

    Yan paneli sabitleyerek sürekli erişim sağlayın ve içeriğinizi kolayca yönetin.

    Box görünüm

    Temanızın yanlarına box tarzı bir çerçeve ekleyebilir veya mevcut çerçeveyi kaldırabilirsiniz. 1300px üstü çözünürler için geçerlidir.

    Köşe Yuvarlama Kontrolü

    Köşe yuvarlama efektini açıp kapatarak görünümü dilediğiniz gibi özelleştirin.

  • Renginizi seçin

    Tarzınızı yansıtan rengi belirleyin ve estetik uyumu sağlayın.

Geri