• vBulletin gözlemleri veya dinamik içeriği önbelleğe alma girişimleri. vBulletin gözlemleri veya dinamik içeriği önbelleğe alma girişimleri Dikkatli vbulletin

    Kendi vbulletin forumunuzu işletiyorsanız, er ya da geç forumunuzu korumayı düşünmelisiniz. Hadi başlayalım:

    1) Satırımızın en sonuna kadar güncelleyelim (3.5.x, 3.6.x, 3.7.x)

    Tanım: -
    Neden?: JelSoft sürekli olarak ortaya çıkan güvenlik açıklarını kapatır.

    2) Yönetici ve denetim panellerini yeniden adlandırın

    Açıklama: Yönetici panelini yeniden adlandırıyoruz, ancak yapılandırmada hiçbir durumda yeniden adlandırılan yönetici panelimizin yolunu yazmayız. Ayrıca modu yeniden adlandırıyoruz, ancak daha az savunmasız olduğu için zaten yapılandırmaya kaydedilebilir (bu da tavsiye edilmese de)
    Neden?: Yönetici panelini yeniden adlandırırsanız ve yapılandırmada yolu belirtmezseniz, onu bulmak çok daha zor olacak ve bu nedenle XSS veya daha kötüsünü uygulayacaksınız. Dezavantajları vardır: - bir profili düzenlemek ve moderatörler eklemek, bağlantıları manuel olarak düzenlemeden çalışmayı durduracaktır.

    3) .htaccess dosyasını yönetici paneline yerleştirin:

    Tanım:
    a) ip statik ise, o zaman
    Kod:

    İzin ver, reddet, tüm izinleri reddet, you.ip.add.res'ten izin ver

    b) Ayrıca ek bir şifre de belirledik:
    Bağlantıyı takip edin: _http://vbsupport.org/htaccess.php, alanları doldurun ve talimatlara göre htaccess dosyamıza ekleyin.
    Neden?: Yönetici paneli için ek şifre korumasının hiçbir zararı yoktur.

    4) Dosya ve klasörleri silin:

    Tanım:
    a) Dosyaları silin:
    /validator.php (varsa)
    /checksum.md5 (varsa)
    b) Klasörleri silin:
    /düzenlemek/
    Neden?: Sıfır sürümlerden gelen güvenli olmayan dosyalar, dosya listesinin görüntülenmesini mümkün kılabilir ve kurulum klasörü çok zararlıdır =)

    5) Ekleri ve avatarları taşıyın

    Tanım:
    Yönetici paneline gidin ve ardından:
    a) Ekler -> Ek depolama yöntemi
    Ekler bir veritabanında saklanmalıdır
    Alıntı:
    Ekler artık veritabanına kaydedildi
    , eğer durum böyle değilse, “İleri” butonunu kullanarak onları oraya taşıyın.
    b) Avatarlar -> Kullanıcı görseli saklama türü
    Avatarlar bir veritabanında saklanmalıdır
    Alıntı:

    Artık görüntüler veritabanında saklanıyor, eğer durum böyle değilse “İleri” butonunu kullanarak oraya aktarıyoruz.

    Neden?: Satır 3.5, eğer hafızam beni yanıltmıyorsa, resimlere doğrudan bağlantılar veriyordu; bu da, barındırma yapılandırması yanlışsa, içinden bir kabuk yükleme şansı veriyordu.
    6) Klasörlerdeki izinleri ayarlayın
    Açıklama: 5. adım tamamlandıysa), artık özel***** klasörlerindeki izinleri artık güvenli bir şekilde 644'e ayarlayabiliriz, çünkü onlara artık ihtiyacımız yok (veya bunları silebilirsiniz). Daha sonra vbulletin'i talimatlara göre yüklediyseniz /(root) içindeki tüm klasörlerin 644 izinleri olması gerekir, bunu kontrol edin yoksa izinleri 644 olarak ayarlayın.
    Neden?: Bir bilgisayar korsanının kabuk yüklemesini zorlaştırıyor.
    7) Hiçbir zaman hiç kimse için “HTML'ye izin ver” seçeneğini etkinleştirmeyiz.
    Tanım: -
    Neden?: İşlev etkinleştirildiğinde XSS saldırılarının olasılığı.

    8) .htaccess dosyasını include klasörüne yerleştirin

    Açıklama: .htaccess dosyasını aşağıdaki içeriğe sahip include klasörüne koyuyoruz:

    İzin ver, reddet, hepsinden reddet

    Neden?:
    - eğer bir şekilde bir mermi oraya su basarsa, ona erişemeyecekler.
    - eğer sizi doslarsa, php yorumlayıcısının düşmesi ve sadece Apache'nin kalması mümkündür - ve Apache php dosyalarını okumanıza izin verir - bu nedenle /includes/ klasöründeki tüm dosyaları okumak mümkün olacaktır - aynı yapılandırma .php, ki bu pek iyi değil.
    9) Yönün içine itin. xtax gibi 0777 özniteliklerine sahip dosyalarla: - (c) kerk _http://vbsupport.org/forum/member.php?u=30
    Tanım:
    Kod:

    RemoveHandler .phtml RemoveHandler .php RemoveHandler .php3 RemoveHandler .php4 RemoveHandler .php5 RemoveHandler .cgi RemoveHandler .exe RemoveHandler .pl RemoveHandler .asp RemoveHandler .aspx RemoveHandler .shtml


    Sipariş izin ver, reddet
    Herkesten reddet

    gerekirse işleyicilerinizi ekleyin
    işte bu, listelenen komut dosyalarının hiçbiri bu dizinde çalıştırılamaz
    Neden?: -

    10) Hack'i yükleyin: http://allcheats.ru/product-firewall_vb_rs.xml

    Tanım:
    Hack'i içe aktarın ve bir dosya oluşturun: web sunucusu için yazma izinlerine sahip logfile_worms.txt (777)
    Neden?: -
    Değişkenlere yapılan bir dizi "kötü" atamaya karşı koruma Aşağıdaki yazıda daha fazlasını okuyun


    11) Config.php dosyasını düzenleyin, silinemez kullanıcı alanına yöneticilerin kimliğini girin.

    Tanım:
    /vb/includes/config.php. Profilde gerekli tüm değişiklikleri yaptıktan sonra yöneticilerin kimliğini girmeniz yeterlidir.
    Neden?: -


    12) Modları/hack'leri kaldırdıktan sonra indirdiğiniz dosyaları da silmeyi unutmayın.

    Tanım: -
    Neden?: -


    13) Yedeklemeleri asla public_html klasörüne kaydetmeyin.

    Tanım: -
    Neden?: Yedeğin adını tanıyan herkes tarafından indirilebilecek.

    14) "Dosya Denetçisi" eklentisini yükleyin. Yazar - Hayalet (http://www.vbsupport.org/forum/member.php?u=38422)
    Tanım:

    Eski komut dosyalarımı karıştırırken bu ürünle karşılaştım - Dosya Denetçisi. Bunlar, veritabanındaki mevcut dosyaların bir listesini kaydedebileceğiniz ve zaman zaman bunlardan herhangi birinin değişip değişmediğini (her dosya için boyut, sahip ve erişim hakları kaydedilir) kontrol edebileceğiniz vBulletin için çeşitli modüllerdir - yerleşik cron görevi, bulunan tutarsızlıklar hakkında yöneticiye e-posta yoluyla bilgi verecektir. Karşılaştırma için dosya listelerinin birkaç farklı kopyasını (revizyonunu) veritabanına kaydedebilirsiniz (e-posta bildirimi ile otomatik doğrulama yalnızca en son revizyonda kontrol edilir). Görünüm ve mevcut ayarlar ekran görüntülerinde görülebilir.

    KURULUM: Kurulum için arşivden sunucuya iki PHP dosyası yüklemeniz ve ürünü "product-gfi.xml" dosyasından içe aktarmanız gerekir.

    GÜNCELLEME: Sürüm güncellemesi sağlanmadığından yeni bir sürüm yüklemek için öncelikle önceki sürümün kaldırılması önerilir.

    ZY Ürün, 3.6.8'den 3.8.1'e kadar tüm sürümlerde başarıyla çalıştı. Doğru, gezinme çubuğundaki açılır menüye bağlantı farklı yerlere eklendi, ancak bunlar küçük şeyler.

    Genişletmek için tıklayın...

    Eklentiyi şu bağlantıdan indirebilirsiniz: http://allcheats.ru/gfi.zip veya http://www.vbsupport.org/forum/showthread.php?t=29131 (kayıt gereklidir)

    Neden?: Bir web sitesinde kabuk aramanın yeri doldurulamaz bir şeydir, ancak önceden yüklenmesi gerekir.

    ----------

    Kısa bir özet:

    Yönetici paneline erişim sağlamak oldukça zordur - bu nedenle, kabuğu yönetici paneli aracılığıyla da yükleyebilirsiniz, bu da kabuğu vola açıklarından yükleyebileceğiniz anlamına gelir, ancak onu içeriklerin içine dökerseniz - bazı hack'ler için dosyalar vardır. 777 gerektirir - o zaman içerme klasörümüzde tümünden reddet vardır - Kabuğu kullanmayın!
    ve geri kalan klasörlerde izinleri 644 olarak ayarlayabilirsiniz, eğer tüm adımları tamamladıysanız - o zaman chrooting doğru şekilde yapılandırılmışsa (veya adı ne olursa olsun - kelime pek ayık olmayan kafamdan uçtu) yükleme oldukça zor olacaktır. )...
    Ayrıca, hiçbir yere varmadan gizlice dolaşan ve böylece kendilerini XSS ve Truva atlarına maruz bırakan yöneticilere karşı da koruma ekledik.
    (c) ben

    Forum motorunu seçin. IPB, vBulletin, Phpbb


    Forum motoru ciddi bir site için gerekli bir şeydir. Prensip iyi bilinmektedir: herhangi bir web sitesi etkileşimli olmalıdır. Yorumlardan makalelere ve kendi tematik sosyal ağınıza kadar etkileşimi sağlamanın birçok yolu vardır. Forum, ziyaretçilerden gerçek geri bildirimler almak için belki de en evrensel araçtır.

    Forum şunları yapmanızı sağlar:

    Sürekli olarak geri dönecek ve aktif olacak site kullanıcılarından oluşan kalıcı bir kitle oluşturun. Ziyaretçi etkinliği gerçek paradır.

    İçerikten tasarruf. Bir forum oluşturursanız içerik kullanıcılar tarafından oluşturulur ve sahibinin tanıtım için büyük miktarlarda metin satın almasına gerek kalmaz.

    Sitenin anlamsal çekirdeğini genişletmek. Bir forum oluşturmak, sahibinin fazla çaba harcamasına gerek kalmadan sitenin tanıtılmasına yönelik taleplerin sayısını artırmaya olanak tanır.

    Forum motorunu kurmak basit bir işlemdir, ancak kurulum ve daha fazla yönetim, yeni başlayanlar için birçok zorluğa neden olabilir. Bununla birlikte, her popüler motor için çok sayıda belge vardır, bu nedenle dilerseniz her şeyi anlayabilirsiniz. Veya profesyonel bir yönetici kiralayın.

    Genel olarak, motorların büyük çoğunluğu forumun normal çalışması için oldukça uygundur, kullanıcılar için erişim haklarını ayarlamak için esnek bir sistem de dahil olmak üzere yaklaşık olarak aynı temel işlevlere sahiptirler. Yönetim kolaylığı, bir dizi şablon ve eklenti, güvenilirlik ve üreticiden teknik destek açısından farklılık gösterirler. İncelemeye Runet'teki ilk üçle başlayacağım: Phpbb, Runet'te forum oluşturmak için belki de en popüler motordur. Yeni başlayanlar için Phpbb'nin temel avantajı hem forum motorunun hem de her türlü eklentinin ücretsiz olmasıdır. Hem Rusça konuşulan hem de yabancı internette birçok farklı Phpbb hayran topluluğu da var.

    Diğer avantajlar arasında işlem hızı, basitlik ve ayarların göreceli esnekliği, çok sayıda şablon ve eklenti yer alır. Phpbb'de bir forum oluşturursanız, sitenin bir parçası olarak kullanılabilir (birçok cms ile entegrasyon olasılığı vardır), ancak buna dayalı olarak aşağı yukarı tam teşekküllü bir portal sitesi de oluşturabilirsiniz.

    Ancak Phpbb'nin bir dezavantajı da var; hem spam saldırılarına hem de kişinin kodunun girilmesiyle hacklenmeye karşı oldukça savunmasızdır. Bunu önlemek için, spam'e karşı koruma sağlayacak özel eklentiler yüklemeniz ve ayrıca yeni sürümleri yükleyerek motoru düzenli olarak güncellemeniz gerekir. Ne yazık ki, bu her zaman %100 koruma sağlamaz, dolayısıyla bunu kendiniz manuel olarak veya moderatörler atayarak izlemeniz gerekecektir. Resmi web sitesinden indirebilirsiniz https://www.phpbb.com/

    IPB (Invision Power Board), yeni başlayanların çoğunu hemen korkutan ücretli bir forum motorudur. Bununla birlikte, projenin ciddi olması amaçlanıyorsa, IPB için yaklaşık 200$'lık bir meblağın kararlı bir web yöneticisini durdurması pek olası değildir. Ancak, çok çeşitli olasılıklar uğruna bile, desteği ve güncellemeleri kendiniz için karmaşık hale getirme riskini göze alarak IPB motorunu kendiniz için sürekli olarak yeniden oluşturmaya hazır olup olmadığınızı on kez düşünün.

    Sistemin farklı hizmetlerle (çeşitli cm'ler, bloglar, sohbetler, fotoğraf galerileri vb.) entegrasyon için çok sayıda olasılığı vardır. Belki de bu motordaki bir portal, elbette belirli ayarlarla tamamen tam teşekküllü bir web sitesi olarak düşünülebilir.

    Ve burada merhemde önemli bir sinek var - IPB motoru oldukça nadiren güncelleniyor, kullanıcılar kendileri güvenlik açıklarını ve hataları bulan testçiler gibi davranıyor. Her durumda, kod "çarpık" ve yetersiz hale gelir. Yüksek kaliteli Rus hayran topluluğu yok, tüm sorunların bağımsız olarak çözülmesi gerekecek. Rusça yerelleştirmeleri de mükemmel olmaktan uzaktır; normal görüntüleme için dil dosyalarının sıklıkla düzenlenmesi gerekir.

    Kodun karmaşıklığı ve yanlışlığı nedeniyle IPB'deki forumlar yalnızca FireFox'ta doğru şekilde görüntüleniyor, diğer tarayıcılarda küçük sorunlar olabilir.

    İkinci sürümden üçüncü sürüme yükseltme yaparken de bir sorun olabilir - dış görünümlerin ve sınıfların yapısı değişti ve forum değiştirildiyse yükseltme sorunlu olacaktır.

    IPB şablon sistemi son derece kafa karıştırıcıdır, görünümü değiştirmek o kadar kolay değildir, birçok dosyayı "ileritmeniz" gerekecektir. Standart tasarım fena değil ve oldukça tanıdık - ancak standarttır ve bu, çoğu kişi için başlı başına önemli bir dezavantaj olabilir. Invision Power Board'u http://www.invisionpower.com/apps/board/ resmi web sitesinden indirebilirsiniz.
    vBulletin (vb). İnternetin Rusça konuşulan bölümünde vBulletin'e geleneksel olarak "vobla" veya "bun" adı verilir. Bu belki de en iyi forum motorudur, eklenecek başka bir şey yok. Yaklaşık 250 $'lık fiyat (lisans bir yıllığına satın alınır ve bu süre zarfında ücretsiz güncellemeler içerir) oldukça haklıdır ve kesinlikle zamandan ve sinirlerden tasarruf ederek kendini amorti edecektir. Burada her şey saat gibi çalışıyor. Paranın neden alındığı oldukça açık - vBulletin motoru sürekli olarak geliştiriliyor ve sadece hayranların değil, profesyonel programcıların da üzerinde çalıştığı açık.

    Tüm işlevleri listelemenin bir anlamı yok; bu (veya eklentileri), bir yöneticinin bir forum oluşturmak için ihtiyaç duyabileceği hemen hemen her şeyi uygular. Çoklu alıntı, podcast desteği, kullanıcı toplulukları, sosyal gruplar, esnek bir itibar sistemi ve çok daha fazlası var.

    Elbette vBulletin'in çok sayıda eklentisi ve kullanıcı topluluğu var, bu nedenle özellikle resmi bir destek ekibi olduğu için bakım konusunda herhangi bir sorun yaşanmayacak. VBulletin'in dezavantajı çok büyük olmasa da, örneğin kullanıcı blogları için ücretli eklemelerdir.

    Genel olarak forumun hiçbir eksiği yok. Güvenilirliği ve her türlü saldırıya karşı dayanıklılığı nedeniyle tam olarak büyük ciddi projeler için önerilebilir. Sonuç olarak özellikle yüklü eklentilerle birlikte sunucu üzerinde önemli bir yük oluşturur ancak ciddi projeler için genellikle ciddi sunucular ve ciddi yöneticiler kullanırlar. Resmi web sitesinden http://www.vbulletin.com/ indirebilirsiniz.

    SMF (Basit Makineler Forumu). Her yeni başlayanın kullanabileceği basit bir motor. Basitlik, işlevsellik eksikliği ile telafi edilir, ancak herkesin tam bir "numara" setine ihtiyacı yoktur. Eklentilerin (modların) kurulumu motorda uygun bir şekilde organize edilmiştir; yalnızca birkaç tıklamayla doğrudan yönetici panelinden indirilebilir ve kurulabilir.

    Yönetim paneli biraz alışılmadık, ancak yeni başlayan biri için bu bir dezavantaj değil çünkü diğer motorlarla ilgili deneyimi veya alışkanlığı yok. Yabancılık rahatsızlık anlamına gelmez. Diğer bir avantaj, diğer motorlardan geçiş yapmak için çok sayıda dönüştürücünün bulunmasıdır.

    Forum, bilgisayar korsanlığı ve spam açısından oldukça güvenilirdir... Eh, spam, ihtiyaç duyulan ve onunla mücadele edilebilecek ebedi bir sorundur. SMF'nin ücretsiz olmasına rağmen geliştiriciler ve deneyimli kullanıcılar, resmi proje forumunda ihtiyacı olan herkese yardım sağlıyor.

    Bu motoru temel alarak, portallar için özel eklentiler (Adk Portal, EzPortal vb.) kullanarak tam teşekküllü web siteleri de oluşturabilirsiniz.Ancak asıl soru, foruma dayalı bir portal oluşturmaya değer olup olmadığıdır. Tam teşekküllü bir motorda ana siteye ek olarak forum yapmak daha mantıklıdır.

    Intellect Board (IntBoard). Bir hayran tarafından yazılan ve kendisi tarafından başarıyla terk edilen, hayranlara yönelik bir forum motoru. Ancak terk edilme, kategorik olarak tavsiye etmemeniz için bir neden değildir.

    Hemen eksikliklerden bahsedelim. Sorunlar genellikle birdenbire ortaya çıkıyor, büyük bir destek yok, resmi forum neredeyse ölü ve bu motordaki forumların sahipleri orada nadiren yanıt veriyor. Neredeyse hiçbir eklenti veya şablon yok - her şeyi kendiniz yapmanız gerekiyor.

    Ancak avantajları da var. Motor kodu, yeni başlayanların bile anlayıp bazı sorunları kendi başlarına çözebilecekleri ve ayrıca bazı işlevleri kendileri için ayarlayabilecekleri kadar basittir. Motor çok hafiftir ve sunucu üzerinde çok az yük oluşturur. Yönetici paneli son derece standart değildir, ancak kullanıcılar için hakları yapılandırmak için belki de en iyi fırsata sahiptir; Gruplardan oluşan bir sistem ve her bir bölüme erişim hakları, güçlü ve etkili bir denetleme sistemi oluşturmanıza olanak tanır.

    PunBB. Ortaya çıkan sorunların çözülmesine yardımcı olacak oldukça güçlü bir topluluğa sahip basit, hafif bir motor. Sunucu kaynakları konusunda iddiasız. Yönetim paneli sezgiseldir.

    Düzen CSS kullanılarak yapılmıştır, bu nedenle tablo düzenine alışkın olan yeni başlayanlar şablonları düzenlemeyi alışılmadık bulacaktır. Ancak bu aynı zamanda bir artı - modern teknolojilere hakim olmanın zamanı geldi.

    Ciddi bir dezavantaj, spam için yüksek kullanılabilirliktir; yüklü eklentilere ek olarak bunu manuel olarak izlemeniz gerekir.

    ExBB ücretsiz bir motordur; özelliği, MySQL kullanmadan metin veritabanlarıyla çalışmasıdır. Belki 10 yıl önce bu bir avantajdı; bu tür siteler daha az yük oluşturuyordu ve veritabanı desteğiyle barındırma çok daha pahalıydı. Günümüzde herhangi bir barındırma MySQL'i desteklemektedir ve metin veritabanları bir dezavantajdır; çok daha yavaştırlar ve daha az güvenilirdirler.

    Ancak çok fazla ziyaretçi ve mesaj akışının beklenmediği küçük bir site için bu cms'yi kullanarak bir forum oluşturabilirsiniz. Kurulumu ve bakımı kolaydır ve çok sayıda kullanıcıya ve resmi web sitesinde bir destek forumuna sahiptir.

    Vanilya – bu az bilinen motor, en popüler cms'lerden biri olan Wordpress'e ek olarak konumlandırılmıştır. WordPress’in standart özellikleri arasında forum oluşturma imkanı bulunmamaktadır. Elbette her forum motorunu uyarlayabilirsiniz ama bu o kadar kolay değil. Vanilya normal bir eklenti gibi kurulur.

    Kişisel mesaj sistemi alışılmadık bir şekilde uygulanmaktadır - normal konular gibi yayınlanırlar, ancak yalnızca gönderildikleri kişiler tarafından görülebilirler. Herkese açık olanın yanı sıra herhangi bir konuda kişisel bir mesaj bırakabilirsiniz. Sıradışı ama oldukça kullanışlı. Genel olarak geliştiricilerin diğerlerinden farklı bir forum oluşturmaya karar verdikleri görülüyor. Bunun artı mı eksi mi olduğuna karar vermek size kalmış.

    Genel olarak, çok sayıda motor vardır - deneyebilirsiniz, popüler bir şeye hemen karar verebilirsiniz, hatta kendinize ait bir şey yazabilir veya sipariş edebilirsiniz. Her özel durum için hangi seçeneğin en uygun olacağını kesin olarak söylemek imkansızdır.

    Bu tür hizmetlerin yönetimi genellikle hiçbir şeyden sorumlu değildir, bu nedenle forumunuz harika bir anda kaybolursa en iyi ihtimalle özür dileyecektir.

    Bir sonraki yazımda size neler olduğunu anlatacağım.

    Döndükleri birkaç VPS'den sorumluyum... genellikle benim sorumluluk alanım değil ve bu nedenle orada dönen şey dönüyor, orta derecede yavaşlıyor, orta derecede çalışıyor. Ve bunlardan birinde belirli bir forumun çalıştığı ortaya çıktı ve forum yavaşlamaya başladı. Ve bunu çözmek istedim...

    Kaynak
    • vBulletin 3.8.x forumu
    • forum.domain.com alt alan adına taşındı
    • Nginx 1.1.13, php 5.3.x (fpm)
    • Bu sunucuda forum dışında hiçbir şey çalışmıyor. ( bu önemli).
    • Mysql ayrı bir sunucuda, TCP/IP üzerinden iletişim.
    Arka plan
    Forumda kendim için yaşadım, zahmet etmedim, gösterdim xm üst Yük yüzde 30-40 civarında. Ve sonra "X" saati geldi ve yük yüzde 90'lık düz bir platoya sıçradı ve zirveler daha yüksekti ki bu genel olarak uğultu değildi. DDOS şüphesi doğrulanmadı. Günlükler normal bir iş yükünü gösteriyordu. Aptalca kaynakları artırmadan önce, neler olduğunu anlama ve mümkün olan her şeyi önbelleğe almaya çalışma fikri ortaya çıktı.
    Soruşturma. Birinci bölüm: Bir kadın ziyaretçi ne ister?
    Bu yazılımın ideolojisine ve özelliklerine aşina olmadığım için, günlükleri ve ziyaretçiler ile sunucu arasındaki trafiği analiz ederek sorunu incelemeye başladım. Her şeyden önce, forumdaki mesajların eklerinin yalnızca komut dosyası tarafından verildiğini keşfettiğimde şaşırdım. ek.php, dosyaların kendileri veritabanında veya yerel bir diskte saklanabilir, ancak geri dönüş yalnızca bir komut dosyası aracılığıyla gerçekleşir. Ve başka hiçbir şey yok. Yani, 8-10 fotoğraf içeren mesaj dizisi başına PHP yorumlayıcısının 8-10 ekstra seğirmesini alıyoruz. Ve bu her ziyaretçi için geçerlidir. Ekleri görüntülemek için bu foruma kayıt olmak gerekmediğinden, ekler örneğin birkaç gün boyunca önbelleğe alınabilir. Bunun gibi bir şey:
    konum = /attachment.php ( maksimum sona erer; limit_req bölgesi=lim_req_1s_zone patlama=5; fastcgi_pass forum__php_cluster; include /etc/nginx/fastcgi_params; include /etc/nginx/fastcgi_params_php-fpm; fastcgi_cache forum_att__cache; fastcgi_ignore_headers Cache-Control Set-Cookie'nin Süresini Doldurur ; fastcgi_hide_header Set-Cookie; fastcgi_hide_header Pragma; fastcgi_cache_key "$request_method:$http_if_modified_since:$http_if_none_match:$host:$request_uri:"; fastcgi_cache_use_stale güncelleme hatası zaman aşımı geçersiz_header http_500; fastcgi_cache_lock açık; fastcgi_cache_lock_timeout 2m; fastcgi_cache_valid 2d; ) ve http bölümlerinde bir yerde forum_att__cache'i bildir: fastcgi_cache_path /var/cache/nginx/att seviyeleri=1:2 key_zone=forum_att__cache:4m max_size=2g inactive=2d;

    Benim için ikinci "ifşa", forumda arşivlerin olması ve bunların sadece var olması değil, aynı zamanda isteklerin neredeyse yarısının onlardan gelmesiydi. Sayfaların görünümü aynı zamanda içeriklerinin önbelleğe alınmasına da olanak tanır:
    konum /arşiv/ ( 10 günde sona erer; limit_req bölgesi=lim_req_1s_zone patlama=2; konum ~ \.css$ (maksimum sona erer; ) fastcgi_pass forum__php_cluster; fastcgi_index index.php; include /etc/nginx/fastcgi_params; include /etc/nginx/fastcgi_params_php -fpm; fastcgi_param SCRIPT_FILENAME $document_root/archive/index.php; fastcgi_param SCRIPT_NAME $fastcgi_script_name; fastcgi_cache forum_arc__cache; fastcgi_hide_header Set-Cookie; fastcgi_ignore_headers Cache-Control Set-Cookie'nin Süresi Doldu; fastcgi_cache_key "$request_method:$ http_if_mod ified_since:$http_if_none_match:$host: $request_uri:"; fastcgi_cache_use_stale güncelleme hatası zaman aşımı geçersiz_header http_500; fastcgi_cache_valid 2d; ) ve http bölümüne: fastcgi_cache_path /var/cache/nginx/arclevel=1:2 tuşları_zone=forum_arc__cache:4m max_size=2g inactive=2d; Aynı zamanda kendimizi DDOS saldırılarından da koruyalım: limit_req_zone "$psUID" Zone=lim_req_1s_zone:2m hızı=1r/s;
    “$psUID” anahtarının oluşumunu daha sonra anlatacağım.

    Soruşturma. İkinci bölüm - vBulletin'de yetkilendirme
    Bir forum ziyaretçisinin bakış açısından, ziyaretçi kayıtlı bir kullanıcı veya misafir olabilir. Ancak çerezlerin tarayıcıda görünmesi ve kaybolması açısından “geldi, yürüdü, giriş yaptı, yürüdü, çıkış yaptı, yürüdü” durumunu gözlemlersek tamamen farklı bir durum gelişir. Bu nedenle alan adı ve alt alan adlarının çerezlerini temizleyin, HTTPfox'u açın ve ne olacağını görün:
    HTTP/1.1 200 Tamam Çerez Ayarla: PHPSESSID=cdme9rrptft67tbo97p4t1cua5; sona eriyor=22-Şubat-2012 Çar 15:04:12 GMT; yol=/; domain=.domain.com Set-Cookie: bblastvisit=1329059052; sona eriyor=11 Şubat 2013 Pzt 15:04:12 GMT; yol=/; domain=.domain.com Set-Cookie: bblastactivity=0; sona eriyor=11 Şubat 2013 Pzt 15:04:12 GMT; yol=/; domain=.domain.com Set-Cookie: uid=XCuiGU831OyC8VLqAx/QAg==; sona eriyor=31-Aralık-37 Per 23:55:55 GMT; alan adı=.alan.com; yol=/
    İLE kullanıcı kimliği Ve PHPSESSID her şey açık - bunlar nginx'in ve seçeneğin yüklü olduğu php yorumlayıcısının entrikaları session.auto_start, ancak geri kalanı forumdaki etkinliklerin izleyicileridir. Ancak vBulletin'in ana oturum çerezi henüz gözlemlenmedi. İleriye baktığımda, vBulletin'in standart bir PHP oturumu kullanmadığını (daha doğrusu NEREDEYSE kullanmadığını), ancak tanımlayıcısı bir çerezde saklanan kendi oturumunu koruduğunu söyleyeceğim. bbsessionhash. Yani kullanıcı giriş yapmıştır ancak oturum yoktur, yani oturum olmadan anonimdir. Bu durumda, foruma olan bağlantıların iki türü olabilir (bu, sayfadaki tüm bağlantılar anlamına gelir; biri bunun gibi diğeri bunun gibi değil):
    forum.domain.com/forumdisplay.php?s=12b66e447be52ebc84ab16d3f39626fb&f=69
    forum.domain.com/forumdisplay.php?f=69
    Ve eğer ilk türdeki bağlantıyı takip ederseniz, forumdan gelecek bir sonraki yanıt oturum çerezi olacaktır, ancak ikinci türdeki bağlantıyı takip ederseniz bu olmayacaktır. İkinci yanıtın bulunduğu oturumdan bir çerez almadıysanız, ilk türden bir bağlantıyla karşılaşıncaya kadar forumda oturumsuz ve huzursuz bir şekilde dolaşabilirsiniz (görünüş şeklini çözemedim), veya giriş yapmak istiyorsunuz. Giriş başarılı olursa oturum çerezi herhangi bir şekilde ulaşacaktır. Konuk giriş yapmadan önce bir oturumda anonim ise, oturum onun yerine değiştirilecektir. Şuna benziyor:
    HTTP/1.1 200 Tamam Çerez Ayarla: bbsessionhash=85745bc6110db5221e159087bf037f24; yol=/; alan adı=.alan.com; Yalnızca Http
    Giriş yaptıktan sonra oturum "kararlı" olur ve bağlantılarda herhangi bir sıçrama olmaz. Oturum kapatma prosedürü de farklı değildir - mevcut tüm forum çerezleri silinir (ayarlanmamış olanlar bile) ve yeni (“anonim”) oturumun çerezi yazılır:
    HTTP/1.1 200 Tamam Çerez Ayarla: bbsessionhash=deleted; sona eriyor=01 Ocak 1970 Per 00:00:01 GMT; yol=/; domain=.domain.com Set-Cookie: bblastvisit=deleted; sona eriyor=01 Ocak 1970 Per 00:00:01 GMT; yol=/; domain=.domain.com Set-Cookie: bblastactivity=deleted; sona eriyor=01 Ocak 1970 Per 00:00:01 GMT; yol=/; domain=.domain.com Set-Cookie: bbthread_lastview=deleted; sona eriyor=01 Ocak 1970 Per 00:00:01 GMT; yol=/; domain=.domain.com Set-Cookie: bbreferrerid=deleted; sona eriyor=01 Ocak 1970 Per 00:00:01 GMT; yol=/; domain=.domain.com Set-Cookie: bbuserid=deleted; sona eriyor=01 Ocak 1970 Per 00:00:01 GMT; yol=/; domain=.domain.com Set-Cookie: bbpassword=deleted; sona eriyor=01 Ocak 1970 Per 00:00:01 GMT; yol=/; domain=.domain.com Set-Cookie: bbthreadedmode=deleted; sona eriyor=01 Ocak 1970 Per 00:00:01 GMT; yol=/; domain=.domain.com Set-Cookie: bbstyleid=deleted; sona eriyor=01 Ocak 1970 Per 00:00:01 GMT; yol=/; domain=.domain.com Set-Cookie: bblanguageid=deleted; sona eriyor=01 Ocak 1970 Per 00:00:01 GMT; yol=/; domain=.domain.com Set-Cookie: bbsessionhash=3d0bdc5dbe8dabae361deebe8f6048d2; yol=/; alan adı=.alan.com; Yalnızca Http
    Yani çıktıda isimsiz bir kişi (misafir) alıyoruz, ancak yüzde yüz bir oturum var.
    Sonuç olarak forum yazılımı açısından bakıldığında VE HTTP başlıklarında üç tür kullanıcımız var: oturumsuz misafir, oturumlu konuk, giriş yapmış ziyaretçi. Üstelik nginx düzeyinde ikinciyi üçüncüden ayırmak son derece sorunlu.

    Artık hangi çerezlerin ziyaretçi ile sunucu arasında nasıl dolaştığını anladıktan sonra dinamik içeriği önbelleğe alma konusuna yaklaşabilirsiniz. Bildiğiniz gibi, nginx'te fastcgi arka ucundan gelen yanıtları önbelleğe alma işlevi ngx_http_fastcgi_module modülünde yerleşiktir. Bunu yapmak için, http bölümünde global olarak bir önbellekleme bölgesi ve istenen konuma bir anahtar kaydetmeniz gerekir.Ve eğer koşullu statik içerik (resimler, arşivler) için önbellekleme anahtarı küçük eklemeler içeren bir URI olarak kabul edilebilirse, o zaman dinamikleri önbelleğe almak için kullanıcıyı da dikkate almanız gerekir. Bu, şöyle bir kural gibi görünebilir:
    fastcgi_cache_key "$request_method:$http_if_modified_since:$http_if_none_match:$host:$request_uri:$cookie_bbsessionhash:";
    hem misafirleri hem de giriş yapan kullanıcıları memnun edebilirdi, ancak pratikte ziyaretçiler başka birinin önbelleğinin içeriğini almaya başladı. "Gerçek" dinamiklerin önbelleğe alınmasının devre dışı bırakılması gerekiyordu. Umarım karar kesin değildir.

    Ancak bu bilgiler işe yaramaz değil. Buna dayanarak, yalnızca ziyaretçinin IP adresine değil aynı zamanda durumuna göre de isteklerin sıklığını sınırlamak için bir anahtar oluşturabiliriz.
    $psUID "anon"u ayarlayın; $psUCL "anon"u ayarlayın; if ($cookie_bbsessionhash) ( set $psUID "$cookie_bbsessionhash"; set $psUCL "kullanıcı"; ) if ($psUCL = "anon") ( set $psUID "anon:$remote_addr"; )
    Tüm konumları açıklamadan önce config'in bu parçasını nginx config'in sunucu bölümüne yerleştiriyoruz. Sonuç olarak, oturumu olan bir kullanıcı için orijinal bir anahtar, oturumu olmayan ziyaretçiler için (örneğin, arama tarayıcıları için) IP adresine dayalı bir anahtar alıyoruz.

    sonuçlar
    Bu çabaların bir sonucu olarak, sanal makinedeki genel yük yüzde 90'lık bir seviyeden, yüzde 80'e varan artışlarla yüzde 40'lık bir testere yüküne düştü.

    VBulletin bir forum yöneticisinin ihtiyaç duyabileceği her şeyi sunuyor. Podcasting, çoklu alıntı desteği, topluluklara ve gruplara bölünme, kullanıcı itibarı - tüm bunlar, üçüncü taraf uzantılar yüklenerek genişletilebilen temel yapılandırmada mevcuttur.

    Motor, özellikle eklentiler ve üçüncü taraf komut dosyaları yüklendikten sonra sunucuda yüksek bir yük oluşturur. Bu nedenle, normal çalışma için normal barındırma satın almanız gerekecek - kartvizit web sitesini bile yavaşlatan ücretsiz teklifleri ve kuruşlar için küçük planları unutun. Trafik ne kadar yüksek olursa, sunucudaki yük de o kadar büyük olur, bu nedenle bant genişliğini yedek olarak almanız gerekir. Tercihen sınırsız.

    Vbulletin büyük projeler oluşturmak için tasarlandığından barındırmadan da tasarruf edemezsiniz. Motor, bilgisayar korsanlığı ve spam saldırılarına karşı dayanıklıdır, böylece ziyaretçiler kendilerini güvende hissedebilirler. Bir moderatöre ihtiyaç duyulacak, ancak reklam gönderilerinin konularını temizlemek için değil, tartışmaları yönetmek için.

    Görünümün temel olarak özelleştirilmesi, sayfa eklenmesi ve düzenlenmesi için yerleşik tasarımcıyı kullanabilirsiniz. Oraya gitmek için siteye bir yönetici hesabı kullanarak giriş yapmanız gerekir. Kullanıcı adının yanında Açık olarak ayarlanması gereken bir anahtar vardır. Şifreyi tekrar girdikten sonra site tasarım modunda açılacaktır.

    Tasarımcıda bir sayfa ekleyebilir, öğeleri bu sayfaya taşıyabilir ve ardından sitenin ana menüsüne giden sayfaya bir bağlantı ekleyebilirsiniz. Bütün bunlar görsel tasarımcıda olduğu kadar basit bir şekilde yapılır. Ancak arayüzün genel olarak özelleştirilmesi, yönetici panelinde uygulanabilecek programlama becerileri gerektirecektir.

    Sunucu altyapısı ile etkileşime girmek istemeyen kullanıcılar için geliştiriciler vBulletin Cloud çözümünü sunuyor. Onun yardımıyla, motoru indirme, kurma ve yapılandırma aşamalarını atlayarak, tüm yönetim işlevleriyle tam olarak işleyen bir forum elde edebilirsiniz. Temel olarak, bir plan satın aldıktan sonra yapmanız gereken tek şey, ziyaretçileri siteye başlatmadan önce siteyi ihtiyaçlarınıza uyacak şekilde özelleştirmek.

    Tasarım

    Motorun resmi web sitesinde temel tasarım için temalar indirebilirsiniz. Siteye kolaylıkla kurulurlar ve web yöneticisinin istekleri doğrultusunda değiştirilebilirler. Stilleri yönetmek için yönetim panelinde bir Reklamcılık bölümü bulunmaktadır. İçinde şunları yapabilirsiniz:

    • Site arka planını değiştirin veya ekleyin.
    • Arka plan yerine resim ekleyin.
    • Stil dosyasını düzenleyin.

    Yapıcı aracılığıyla temel değişiklikler yapılabilir. Örneğin logoyu değiştirmek için Başlık sekmesini açmanız ve uygun dosyayı yüklemeniz gerekir. Gezinme Çubuğu sekmesinde sitenin ana menüsünü yönetebilirsiniz: diğer sayfalara bağlantılar ekleyebilir ve kaldırabilir, sıralarını değiştirebilir, ad atayabilirsiniz.

    Bu, programlama becerisi gerektirmez; yani, forum motorlarıyla hiç çalışmamış acemi bir web yöneticisi bile temel görünüm ayarlarını yapabilir.

    Arama Motoru Optimizasyonu (SEO)

    CMS vBulletin'in arama motoru optimizasyonu için özel bir modülü yoktur. Ancak bu, forumda çalışmaya gerek olmadığı anlamına gelmez. Sitelerin, robot için sayfanın konusunu belirlemek için kullanılan H1 etiketine sahip olmaları şartı vardır. Dizin oluşturmayı ayarlamak için robots.txt dosyasını düzenlemeniz gerekir; dosyanın doğru şekilde nasıl biçimlendirileceğine ilişkin ipuçları, vBulletin'deki sitelere ayrılmış forumlarda bulunabilir.

    Arama motoru optimizasyonu büyük ölçüde bireysel işlevlerin etkinleştirilmesine veya devre dışı bırakılmasına bağlıdır. Örneğin kodu kaydetmek için atlama menüsünü devre dışı bırakmak gerekir. Bu kadar çok küçük şey var, bunları yalnızca özel forumlarda bulabilirsiniz - vBulletin yardımında buna benzer hiçbir şey yoktur.

    Yeni özellikler eklemek için SEO eklentileri mevcuttur. En ünlüsü VBSEO'dur. Onun yardımıyla, forumu arama motorlarının gereksinimlerini karşılayacak şekilde optimize edebilirsiniz: yönlendirmeleri ayarlayın, kopyaları kaldırın ve tek tek sayfaları dizine eklemenin dışında bırakın. Ana dezavantaj, VBSEO'nun sunucuda bir CMS için zaten oldukça büyük olan ek yük oluşturmasıdır.

    Oranlar

    Yıllık güncellemelere sahip ömür boyu lisansın maliyeti 250 ABD dolarıdır. Bu parayla motorun tüm özellikleri mevcut:

    • Yerleşik uygulamalar: forum, gruplar, anketler, blog.
    • Arama Motoru Optimizasyon Araçları.
    • Profesyonel destek.
    • Esnek arayüz ayarları.
    • Tüm katılımcılar için kontrol panelleri: yönetici, moderatör, kullanıcı.
    • Kullanıcı yönetimi araçları.

    250$ son fiyat değil. Bu parayla yalnızca motoru ömür boyu kullanma hakkını satın alırsınız.

    • Güncellemeleri almaya devam etmek için her yıl 209$ ödemeniz gerekir. Geliştiriciler ayrıca ücretli eklentiler de sunuyor:
    • Altbilgi markasını sitenizin tamamından kaldırmak, tek seferlik 169 ABD doları tutarında bir ücrettir.
    • Ek telefon veya bilet desteği aylık 49 ABD Doları veya yıllık 329 ABD Dolarıdır.
    • Profesyonel kurulum veya motor yükseltmesi - tek seferlik ücret 149$.

    Forumun küçük ekranlarda güzel görünmesini istiyorsanız Mobil Paketi satın alabilirsiniz. Lisansın maliyeti 399 ABD doları, yenileme yenilemeleri ise yıllık 359 ABD dolarıdır. Mobil sürümün fiyatı ayrı olarak 199$'dır. Bu olmadan forum normalde yalnızca bilgisayarda kullanılabilir.

    VBulletin Cloud'u seçerken üç plan mevcuttur: Bronze, Silver ve Gold. Hepsi şunları sunuyor:

    • En son sistem sürümüne otomatik güncelleme.
    • vBulletin için optimize edilmiş sunucuları kullanma.
    • Kullanılabilir disk alanını ihtiyaçlarınıza uyacak şekilde değiştirin.
    • Otomatik yedekleme oluşturma.

    Minimum planın maliyeti aylık 19,95 ABD dolarıdır (yıllık ödeme yapılırsa 14,99 ABD doları). 25 GB bant genişliği, ücretsiz destek ve ücretsiz alan adı sunar. Bu, trafiğin az olduğu küçük forumlar için mükemmel bir çözümdür.

    Silver'ın maliyeti artık aylık 39,95 ABD dolarıdır (yıllık ödenirse 29,99 ABD doları) ve 75 GB bant genişliğinin yanı sıra bilet sistemi aracılığıyla destek sağlar. Bu plan, orta düzeyde trafiğe sahip, büyüyen topluluklar için uygundur.

    En yüksek plan aylık 74,95 $ (yıllık faturalandırılırsa 59,99 $) karşılığında Altın'dır. 200 GB bant genişliği, ücretsiz telefon desteği. Büyük forumlar için en uygun çözüm.

    Avantajlar ve dezavantajlar

    VBulletin çok uzun bir süredir piyasada olduğundan gelişmiş bir kullanıcı topluluğuna, ayrıntılı belgelere ve ilgili birçok materyale sahiptir: temalar, şablonlar, uzantılar. Diğer avantajların yanı sıra şunları not ediyoruz:

    • Çok sayıda tasarım teması.
    • Halihazırda 1000'den fazla eklenti ve modül kurarak işlevselliği genişletme imkanı.
    • İçerik oluşturma ve web sitesi yönetimi için basit araçlar.
    • Basitleştirilmiş tasarım özelleştirmesi.
    • Fotoğraf ve videoların kullanıcılar tarafından hızlı bir şekilde yayınlanması.
    • Uygun paketi satın alırken mobil cihazlar için optimize edilmiştir.

    Daha önce başka bir forum motoru kullandıysanız VBulletin yönetim paneline alışmanız uzun zaman alacaktır. Fena değil - sadece alışılmadık ve bazı anlarda rahatsız edici.

    VBulletin, özellikle birden fazla uzantı yüklerken her zaman yüksek bir sunucu yüküne sahip olmuştur. Daha güçlü bir plan satın almak için barındırma seçerken bu dikkate alınmalı ve bütçeye dahil edilmelidir. Maliyetler çok yüksektir ve kesinlikle paradan tasarruf edemezsiniz; bu, ziyaretçi akını olduğunda forumun "düşmesi" riskini taşır.

    Geliştirme ekibini değiştirdikten sonra motorun güvenliği konusunda birçok soru ortaya çıkıyor. En kararlı sürüm 3.8 olarak kaldı. Dördüncü ve beşinci sürümler sürekli olarak güvenlik güncellemeleri alıyor; bu, geliştiricilerin ürünün piyasaya sürülmesinden sonra açıkları yamaladığını gösteriyor.

    Muhtemelen vBulletin motorundaki forumları birçok kez görmüşsünüzdür. Forumlar artık moda değil ancak vBulletin hala en popüler motorlardan biri. En son (beşinci) versiyonunda, bir yöneticinin hayatını büyük ölçüde mahvedebilecek çeşitli güvenlik açıkları bulundu. Bu yazımda size bunların nasıl kullanıldığını anlatacağım.

    İlk sorun, kullanıcı verilerinin yanlış filtrelenmesidir. Bu, isminin gizli kalmasını isteyen bağımsız bir güvenlik araştırmacısı tarafından bildirildi. Güvenlik açığı, bazı sınırlamalara sahip olmasına rağmen, hedef sistemde herhangi bir dosyayı okumanıza ve isteğe bağlı kod çalıştırmanıza izin verdiği için kritik durum aldı.

    İkinci güvenlik açığı TRUEL IT araştırmacıları tarafından bulundu ve CVE-2017-17672 tanımlayıcısını aldı. Motordaki veri seri durumdan çıkarma özellikleriyle ilgilidir ve bir saldırgan tarafından sistemdeki rastgele dosyaları silmek için kullanılabilir.

    SecuriTeam'in Beyond Security programının bir parçası olarak her iki konuyu da detaylandıran tam raporlar yayınlandı. Ayrıca güvenlik açıklarını göstermeye yönelik PoC istismarları da vardır. Tüm bunları sırasıyla inceleyelim.

    Hazırlıklar

    Sunucu olarak WAMP dağıtımını kullandım.

    Dosyaları okuyun, komutları yürütün

    Dolayısıyla, ilk güvenlik açığının nedeni, saldırganın diskteki herhangi bir dosyayı include yoluyla dahil etmesine ve içinde bulunan PHP kodunu çalıştırmasına izin veren Routestring parametresini işlerken yanlış mantıktır.

    Yolumuz, uygulamanın temel başlatılmasının gerçekleştiği en önemli dosya olan index.php ile başlar.

    /index.php
    48: $app = vB5_Frontend_Application::init("config.php"); ... 60: $yönlendirme = $app->getRouter(); 61: $yöntem = $yönlendirme->getAction(); 62: $şablon = $yönlendirme->getTemplate(); 63: $class = $routing->getControllerClass();

    vB5_Frontend_Application::init yöntemine bakalım.

    /includes/vb5/frontend/application.php
    13: vB5_Frontend_Application sınıfı vB5_ApplicationAbstract'ı genişletir 14: ( 15: public static function init($configFile) 16: ( 17: parent::init($configFile); 18: 19: self::$instance = new vB5_Frontend_Application(); 20: self::$instance->router = new vB5_Frontend_Routing();21: self::$instance->router->setRoutes();

    Burada setRoutes yöntemiyle ilgileniyoruz.

    47: genel işlev setRoutes() 48: ( 49: $this->processQueryString(); ... 54: if (isset($_GET["routestring"])) 55: ( 56: $path = $_GET[" rota dizesi"];

    $path değişkeni, routerstring parametresindeki kullanıcı verileri değerini içerir. Forum sayfasının yolunu ona aktarabilirsiniz ve yüklenecektir.



    Diyelim ki /test'i geçtik.

    Bir değişken atadıktan sonra satırın başındaki eğik çizgiyi (varsa) ortadan kaldıran bir kod parçası bulunur.

    /includes/vb5/frontend/routing.php
    75: if (strlen($yol) AND $yol(0) == "/") 76: ( 77: $yol = substr($yol, 1); // $yol = "test" 78: )
    include\vb5\frontend\routing.php
    83: if (strlen($yol) > 2) 84: ( 85: $ext = strtolower(substr($yol, -4)) ; 86: if (($ext == ".gif") VEYA ($ext) == ".png") VEYA ($ext == ".jpg") VEYA ($ext == ".css") 87: VEYA (strtolower(substr($path, -3)) == ".js" )) 88: ( 89: başlık("HTTP/1.0 404 Bulunamadı"); 90: die(""); 91: ) 92: )

    Gördüğünüz gibi çek oldukça tuhaf. En azından doğrudan kodun içine yazılan yasaklı uzantıların bir listesinin varlığı kafa karıştırıcıdır. Ve genel olarak, uzantının satırın sonundan (85. satır) dört karakter kesilerek elde edilmesi gerçeği kafa karıştırıcıdır. Genel olarak gif, png, jsp, css veya js uzantılı bir dosya almaya çalışırsak sunucu 404 sayfası döndürecek ve betiğin çalışması duracaktır. Tüm kontroller geçildiğinde vB_Api_Route sınıfındaki getRoute yöntemi callApi kullanılarak çağrılır. Kullanıcı tarafından sağlanan bilgilere göre uygun rotaları arar.

    Devam sadece üyelere açıktır

    Seçenek 1. Sitedeki tüm materyalleri okumak için "site" topluluğuna katılın

    Belirtilen süre içinde topluluğa üye olmak, TÜM Hacker materyallerine erişmenizi sağlayacak, kişisel kümülatif indiriminizi artıracak ve profesyonel bir Xakep Skoru puanı biriktirmenize olanak tanıyacaktır!