Python Sorun (string argument of length)

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

OniOz

Üye
14 Mar 2017
246
0
Satan no ie
Merhabalar, yazılım bi süre çalıştıktan sonra "struct.error: unpack requires a string argument of length" hatasını alıyorum. Sistemim ile mi ilgilidir, CPU'm ile mi ilgilidir yardımcı olursanız sevinirim. Format kodum "B" bu arada.

Galiba anladım. Durduğu yeri inceleyince farkettim, yazılım tanısın diye 4 adet flag girmiştim ancak bu flag yeni bir tür olunca işlemedi galiba. Yani belli bir zaman çalıştıktan sonra değil benim tanımlamadığım string'e gelince hata veriyor
 
Moderatör tarafında düzenlendi:

ArViX

Uzman üye
28 Şub 2013
1,273
0
cos a=cos bc
Dostum niye böyle ilginç konular açıyorsunuz anlamakta güçlük çekiyorum. Ne üzerine çalıştığını söylememişsin, nerede bu hatayı aldığını söylememişsin, ne yapmak isterken böyle bir şeyle karşılaştığını söylememişsin, hata aldığın kod yok.Nasıl bir yardım bekliyorsunuz o da ilginç
 

OniOz

Üye
14 Mar 2017
246
0
Satan no ie
Dostum niye böyle ilginç konular açıyorsunuz anlamakta güçlük çekiyorum. Ne üzerine çalıştığını söylememişsin, nerede bu hatayı aldığını söylememişsin, ne yapmak isterken böyle bir şeyle karşılaştığını söylememişsin, hata aldığın kod yok.Nasıl bir yardım bekliyorsunuz o da ilginç

bir porta TCP requesti atan sonra da o port üzerinden login gerçekleştiren bir kod (80 portunda auth isteyip brute çekiyor gibi düşünebilirsiniz). Haklısın eksik bilgi vermişim cidden. sadece kod buraya konulacak kadar kısa değil çünkü birden çok fonksiyon ile bileşik çalışan bir kod, yani hata veren satırı atacak olsam da o satır üzerinden tam olarak işlem yapamayabilirdiniz. Ama haklısın yine de. sorunun neyden kaynaklandığını biliyor musun peki ? ben cevap olarak gelen flag'ler ile alakalı diye düşünmüştüm. Diyelim ki iki tane flag belirledim: OK ve Network Error. 3. başka bir flag gelince (mesela SSL Handshake Failed) bu hatayı aldığımı keşfettim. "result = struct.unpack("!I", data[0:4])[0]" hatayı veren satır bu. 0:4 ü değiştirip yeni bir dönüt alınca yapması gerekeni girdim ancak düzelmedi yine de. Yardımcı olur musunuz ?
 

OniOz

Üye
14 Mar 2017
246
0
Satan no ie
Muhtemelen sunucu tarafından engelleniyor sun ama hata ekranında ss atarsan daha iyi olur

birazdan ss alıp atacağım ama sorun SSL handshake fail veriyor olmasında. sunucu tarafından engellenince kodun çalışması devam ediyor yine. Şöyle diyeyim derlediğim ve başka bir yerden aldığım bir kısımda oluyor bu hata, ve sunucudan gelen hata dönütlerinde yazılım çalışmaya devam ediyor diğer IP adreslerine vs. bakıyor ama herhalde yazan kişi SSL Handshake Failed dönütünü eklemeyince (sorunlu olan dönütün o olduğuna ve eklemediğine eminim) ve yazılım da bu dönütün ne olduğuna anlam veremeyince o 16 byte içerisinde gelen flag'ler ile ilgili olan satırda hata veriyor. Ama yeni bir flag'i nasıl tanımlayacağım bilmiyorum. denedim aklıma gelen çözümleri ama olmadı.
 

umutkalay

Katılımcı Üye
26 Nis 2019
276
0
birazdan ss alıp atacağım ama sorun SSL handshake fail veriyor olmasında. sunucu tarafından engellenince kodun çalışması devam ediyor yine. Şöyle diyeyim derlediğim ve başka bir yerden aldığım bir kısımda oluyor bu hata, ve sunucudan gelen hata dönütlerinde yazılım çalışmaya devam ediyor diğer IP adreslerine vs. bakıyor ama herhalde yazan kişi SSL Handshake Failed dönütünü eklemeyince (sorunlu olan dönütün o olduğuna ve eklemediğine eminim) ve yazılım da bu dönütün ne olduğuna anlam veremeyince o 16 byte içerisinde gelen flag'ler ile ilgili olan satırda hata veriyor. Ama yeni bir flag'i nasıl tanımlayacağım bilmiyorum. denedim aklıma gelen çözümleri ama olmadı.

Madem nadir rastlanan bir durumdan kaynaklandığını düşünüyorsun try except bloğuna al except e pass ekle
 

OniOz

Üye
14 Mar 2017
246
0
Satan no ie
Madem nadir rastlanan bir durumdan kaynaklandığını düşünüyorsun try except bloğuna al except e pass ekle

ama sorun şurada, doğru çok nadir bir durum ancak yazılım durumu algılayamıyor ki except bloğuna alabileyim. yani durumu ifade edebilecek bir şey yok. Kodun içerisinde zaten else konulmuş devam etsin diye ancak, SSL handshake ve bir başka tip hata daha var (ReadExact), bu ikisi gelen ve gelmesi beklenen dönütlerden uzunluğu daha büyük olduğu için işleyemiyor. hata bana diyor ki "struct.error: unpack requires a string argument of length 4" benim anladığım kadarıyla bu lenght 4 u değiştirmem ya da arttırmam gerekiyor. Direkt elif result =="SSL handshake failed" diye de kurdum ancak yine aynı hatayı veriyor. Galiba lenght'in 4 olma sebebi de "OK" ve "fail" ın ikisinin de 4 hane içerisinde olması. bunu nasıl değiştireceğim? Sorun buradaysa en azından.
 

OniOz

Üye
14 Mar 2017
246
0
Satan no ie
ÇÖZDÜÜÜM !!! "lenght 4" kısmını arttırmanın yolunu buldum. B:1 H:3 demek BH ise 4. 16 adet BH yan yana olunca lenght 64 oldu. A, I vs de kullanabilirdim tabii. ama yine de işe yaramadı çok saçma geldi sonra dedim. ya bu bana gereğinden çok büyük bir değer değil de hiç değer göndermiyorsa diye çünkü 16000s yaparak 16000 değerinde bir lenght e kadar çektim yine aynı hatayı verdi. ancak lenght 0 olunca kod düzgün çalıştı. Ancak şimdi hatalı dönüşte bulunanlar düzgün çalışsa da doğru dönüşte bulunanlar çalışmıyor. Ondan bir önce gelen data'nın uzunluğuna bakıp bir if bloğuna koydum yani artık önceden gelen veri 0'a eşit olunca yazılım çökmek yerine devam ediyor. Yardımlarınız için çok teşekkürler : )
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.