[BeviS] Npc item al sat bug hakkında bilgilendirme.

  • Konbuyu başlatan Konbuyu başlatan Admin
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 0
  • Görüntüleme Görüntüleme 71

Admin

Metin2Lobby
Yönetici
Founder
Katılım
6 Mayıs 2022
Mesajlar
52,647
Ticaret : 1 / 0 / 0




Genelde bu işi daha önce yapmamış acemi arkadaşlar tarafından sıkça yapılan bir hata kontrol etme yoludur.

Örneğin silahcıda Kılıç+9 eşyasını 1.000 yang'a satıyorsunuz bu eşyanın yere veya npc'ye geri satma bedelini 10.000 yang olarak ayarlıyorsunuz
bunu makro ile hızlı bir şekilde yaparak varolan 1.000yang 'ı hızlı bir şekilde katlıyorlar sınırsız yang bug'u oluşuyor.

Bunu nasıl kontrol ederiz ?

Mysql üzerinde şu queryi çalıştırarak kontrol edebilirsiniz.
SELECT vnum,p.shop_buy_price,o.price FROM item_proto p INNER JOIN shop_item o ON p.vnum = o.item_vnum AND p.shop_buy_price >= o.price


Eğer müşterilerinizin bu hatayı yapmamasını istiyorsanız kaynak dosyasına şu eklentiyi ekleyebilirsiniz.


Bu işlem ile alış ve satış fiyatını aynı yapmış olursunuz tabi sağlıklı bir çözüm değil en iyisi tabloyuda düzeltin :)







BeviS NPC Item Al Sat Bug Hakkında Bilgilendirme

Metin2 özel sunucularında geliştirme yaparken dikkat edilmesi gereken güvenlik açıkları arasında BeviS NPC sisteminde yaşanan 'item al sat' bug oldukça ciddi sonuçlar doğurabilir.

BeviS NPC Nedir?

BeviS NPC, Metin2 özel sunucularında yaygın olarak kullanılan bir NPC sistemidir. Oyuncuların eşyalarını satın alması veya satması için geliştirilmiş bir arayüzdür. Ancak bazı versiyonlarda hatalı kodlama nedeniyle item al sat işlemleri sırasında güvenlik açığı oluşabilmektedir.

Bug'un Oluşma Nedeni

Bu hata genellikle BeviS NPC sistemine entegre edilen C++ veya Python tabanlı scriptlerde eksik kontrol mekanizmalarından kaynaklanmaktadır. Özellikle oyuncu envanterinde olmayan bir itemin satışı talep edildiğinde sistem bu kontrolü yapmazsa, hatalı işlem sonucunda item çoğalması gibi istenmeyen durumlar meydana gelebilir.

Güvenlik Açığının Etkileri

Oyuncular bu hatayı fark ettiklerinde item çoğaltmak için kullanabilirler. Bu da sunucudaki ekonomik dengenin bozulmasına, gerçek değer yapan oyuncuların mağdur edilmesine ve sunucu güvenliğinin ciddi anlamda tehdit altına alınmasına yol açar.

Teknik Açıklama

C++ kaynak kodlarda genellikle 'packet validation' adımları eksik bırakıldığında bu tip sorunlar meydana gelmektedir. Örneğin, oyuncu paketi üzerinden gelen item ID'si, envanterde gerçekten var mı diye kontrol edilmeden işlem yapılabilir. Bu da 'out of inventory' gibi hatalı senaryoları tetikleyebilir.

Geliştirici Ne Yapmalı?

Sunucu geliştiricileri, BeviS NPC sistemini kullanırken mutlaka tüm item transfer işlemlerini kontrol eden fonksiyonları gözden geçirmelidir. Özellikle envanter kontrolleri, item miktarı doğrulamaları ve yetkilendirme süreçleri eksiksiz uygulanmalıdır. Ayrıca Python GUI ve Py Root dosyalarında da benzer kontroller sağlanmalıdır.

Fix Uygulaması

Güvenlik açığını kapatmak için C++ server-side'da item ID ve miktarı için doğrulama işlemleri eklenmelidir. Ayrıca, oyuncu satışı sırasında envanterde gerçekten o itemin olup olmadığı kontrol edilmelidir. Bu işlem hem Game hem Auth sunucusu üzerinde koordineli çalışarak yapılmalıdır.

Sonuç

Metin2 özel sunucularında BeviS NPC gibi gelişmiş sistemler kullanılırken güvenlik ön plana çıkmalıdır. Geliştiriciler, sistemlerini düzenli olarak test etmeli ve olası açıkları kapatmak için gerekli önlemleri almalıdır. Aksi takdirde, sunucu güvenliği tehlikeye girer ve oyuncu deneyimi olumsuz etkilenebilir.

Kaynaklar

Bu konuyla ilgili daha fazla teknik detay ve örnek kod için Metin2Lobby sitemizi ziyaret edebilirsiniz.


Information About BeviS NPC Item Buy/Sell Bug

Among security vulnerabilities that need attention during Metin2 private server development, the 'item buy/sell' bug in the BeviS NPC system can cause serious consequences.

What is BeviS NPC?

BeviS NPC is a widely used NPC system in Metin2 private servers. It is an interface developed for players to buy or sell items. However, in certain versions, coding errors may lead to security flaws during item transactions.

Cause of the Bug

This error typically stems from missing control mechanisms in C++ or Python-based scripts integrated into the BeviS NPC system. Specifically, if the system does not check whether an item exists in the player's inventory before attempting to sell it, unintended behaviors like item duplication may occur as a result of faulty operations.

Effects of the Vulnerability

Players who discover this bug might exploit it to duplicate items. This can disrupt the server economy, harm genuine players, and seriously threaten server security.

Technical Explanation

In C++ source codes, such issues often arise due to missing 'packet validation' steps. For example, an item ID received via a player packet might be processed without checking whether the item actually exists in the inventory, leading to scenarios like 'out of inventory' errors.

What Should Developers Do?

Server developers using the BeviS NPC system must thoroughly review all functions involved in item transfers. Inventory checks, quantity validations, and authorization processes must be implemented without any gaps. Similar validations should also be applied in Python GUI and Py Root files.

Applying a Fix

To close the vulnerability, validation routines for item IDs and quantities must be added on the C++ server-side. Additionally, the system should verify that the item being sold actually exists in the player's inventory. This process should be coordinated between both the Game and Auth servers.

Conclusion

When using advanced systems like BeviS NPC in Metin2 private servers, security must be prioritized. Developers should regularly test their systems and take necessary precautions to address potential vulnerabilities. Otherwise, server security risks increase and the player experience may be negatively affected.

Resources

For more technical details and sample code related to this topic, visit our site Metin2Lobby.
 

Şuan Bu Konuyu Görüntüleyen Kullanıcılar (Toplam : 0, Üye : 0, Misafir : 0)

Benzer konular

Geri
Üst Alt