Son günlerde, çoklu zincir etkileşim protokolü Poly Network, bir Hacker saldırısına uğradı ve geniş bir dikkat çekti. Güvenlik ekibi yaptığı analizde, bu saldırının keeper özel anahtarının sızmasından kaynaklanmadığını, aksine saldırganın dikkatlice yapılandırılmış verilerle EthCrossChainData sözleşmesinin keeper'ını belirli bir adrese değiştirdiğini düşündü.
EthCrossChainData sözleşmesinin sahibi EthCrossChainManager sözleşmesidir, bu nedenle ikincisi birincinin putCurEpochConPubKeyBytes fonksiyonunu çağırarak keeper'ı değiştirebilir.
Saldırgan, verifyHeaderAndExecuteTx fonksiyonu aracılığıyla özel verileri ileterek _executeCrossChainTx fonksiyonunun EthCrossChainData sözleşmesinde putCurEpochConPubKeyBytes fonksiyonunu çağırmasını sağlıyor ve böylece keeper'ı saldırganın belirlediği adrese değiştiriyor.
Keeper'ı değiştirdikten sonra, saldırgan sözleşmeden istedikleri kadar para çekmek için rastgele işlemler oluşturabilir.
Saldırı Süreci
Saldırgan ilk olarak EthCrossChainManager sözleşmesinin verifyHeaderAndExecuteTx fonksiyonu aracılığıyla putCurEpochConPubKeyBytes fonksiyonunu çağırarak keeper'ı değiştirir.
Ardından, saldırgan birden fazla saldırı işlemi gerçekleştirerek sözleşmeden fonları çekti.
Keeper'ın değiştirilmesi nedeniyle diğer kullanıcıların normal işlemleri geri alındı.
Benzer saldırı teknikleri Ethereum ağında da uygulanmaktadır.
Sonuç
Bu saldırının özü, EthCrossChainData sözleşmesinin keeper'ının EthCrossChainManager sözleşmesi tarafından değiştirilebilmesidir ve ikincisinin verifyHeaderAndExecuteTx fonksiyonu, kullanıcı tarafından sağlanan verileri işleyebilmektedir. Saldırganlar bu açığı kullanarak, dikkatlice yapılandırılmış verilerle keeper'ı değiştirmişlerdir; önceki söylentilerin aksine, keeper'ın özel anahtarının sızdırılması değildir.
Bu olay, çapraz zincir protokollerinin güvenliğinin önemini bir kez daha vurguladı ve geliştiricilerin ve kullanıcıların ilgili işlevleri daha dikkatli bir şekilde tasarlayıp kullanmaları gerektiğini hatırlattı. Aynı zamanda, tüm sektöre bir uyarı niteliği taşıyarak akıllı sözleşme vulnerabilities'lerine yönelik denetim ve önlemlerin güçlendirilmesi çağrısında bulundu.
View Original
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
10 Likes
Reward
10
5
Repost
Share
Comment
0/400
NFTBlackHole
· 08-05 02:09
Yine bir açıkların istismar edildiği tipik bir vaka.
View OriginalReply0
Lonely_Validator
· 08-03 14:54
Gerçekten de yine bir sözleşme açığı.
View OriginalReply0
LazyDevMiner
· 08-02 14:40
Hala sözleşme hatalarını mı düzeltiyorsun? Patladı
Poly Network Hacker saldırı analizi: Sözleşme açığı nedeniyle keeper değiştirildi
Poly Network'in Hacker Saldırısı Olayı Analizi
Son günlerde, çoklu zincir etkileşim protokolü Poly Network, bir Hacker saldırısına uğradı ve geniş bir dikkat çekti. Güvenlik ekibi yaptığı analizde, bu saldırının keeper özel anahtarının sızmasından kaynaklanmadığını, aksine saldırganın dikkatlice yapılandırılmış verilerle EthCrossChainData sözleşmesinin keeper'ını belirli bir adrese değiştirdiğini düşündü.
Saldırı Detayları
Saldırının özü, EthCrossChainManager sözleşmesinin verifyHeaderAndExecuteTx fonksiyonunun _executeCrossChainTx fonksiyonu aracılığıyla çapraz zincir işlemleri gerçekleştirebilmesidir.
EthCrossChainData sözleşmesinin sahibi EthCrossChainManager sözleşmesidir, bu nedenle ikincisi birincinin putCurEpochConPubKeyBytes fonksiyonunu çağırarak keeper'ı değiştirebilir.
Saldırgan, verifyHeaderAndExecuteTx fonksiyonu aracılığıyla özel verileri ileterek _executeCrossChainTx fonksiyonunun EthCrossChainData sözleşmesinde putCurEpochConPubKeyBytes fonksiyonunu çağırmasını sağlıyor ve böylece keeper'ı saldırganın belirlediği adrese değiştiriyor.
Keeper'ı değiştirdikten sonra, saldırgan sözleşmeden istedikleri kadar para çekmek için rastgele işlemler oluşturabilir.
Saldırı Süreci
Saldırgan ilk olarak EthCrossChainManager sözleşmesinin verifyHeaderAndExecuteTx fonksiyonu aracılığıyla putCurEpochConPubKeyBytes fonksiyonunu çağırarak keeper'ı değiştirir.
Ardından, saldırgan birden fazla saldırı işlemi gerçekleştirerek sözleşmeden fonları çekti.
Keeper'ın değiştirilmesi nedeniyle diğer kullanıcıların normal işlemleri geri alındı.
Benzer saldırı teknikleri Ethereum ağında da uygulanmaktadır.
Sonuç
Bu saldırının özü, EthCrossChainData sözleşmesinin keeper'ının EthCrossChainManager sözleşmesi tarafından değiştirilebilmesidir ve ikincisinin verifyHeaderAndExecuteTx fonksiyonu, kullanıcı tarafından sağlanan verileri işleyebilmektedir. Saldırganlar bu açığı kullanarak, dikkatlice yapılandırılmış verilerle keeper'ı değiştirmişlerdir; önceki söylentilerin aksine, keeper'ın özel anahtarının sızdırılması değildir.
Bu olay, çapraz zincir protokollerinin güvenliğinin önemini bir kez daha vurguladı ve geliştiricilerin ve kullanıcıların ilgili işlevleri daha dikkatli bir şekilde tasarlayıp kullanmaları gerektiğini hatırlattı. Aynı zamanda, tüm sektöre bir uyarı niteliği taşıyarak akıllı sözleşme vulnerabilities'lerine yönelik denetim ve önlemlerin güçlendirilmesi çağrısında bulundu.