Burada c bir örnek:
#include <stdio.h>
#include <string.h>
void bad() {
printf("Oh shit really bad~!\r\n");
}
void foo() {
char overme[4] = "WOW";
*(int*)(overme+8) = (int)bad;
}
int main() {
foo();
}
Önerilen gibi Python ve PHP başkaları tarafından yorumlanır olması aslında noktası değildir. Nokta hemen hemen hepsi açığa API'leri ve dil semantik ağır hata-kontrol imkansız işletilebilir tanımsız davranış var yapma olmasıdır. Eğer dilleri derlemek bile, yine de imkansız olurdu. Bu ne olursa olsun yapabileceğiniz güvensiz API'ler edemeyeceği anlamına gelmez. Aslında, Pythons ctypes modülü kullanılarak, benzer bir davranış oluşturmak mümkün olmalıdır, ancak önemli ölçüde zor kazara bunu.
PHP bir betik dili ve hiçbir işaretçiler vardır ve string türü olarak ikili güvenli böyle şeyler PHP çalışmaz.
Ama neden böyle bir şey yapmak istersiniz?
(Oh, orada ... PHP bir tampon taşması sonucu hatalar olabilir, ama herhangi bir şekilde güvenerek canbe ve genellikle oldukça ffast sabittir hiçbir şey olabilir)
Üzgünüz: Python bir zayıflık ulaştınız. Ne yazık ki, bu tasarım, çok az bu konuda yapılabilir bulunuyor. Belki de C ile kalmalıdır
LOWIS v Martin gibi said:
Python üzgünüm, tampon taşmaları desteklemiyor.
PS Vay. Ben o yazıyı okudum bir kaç ay önce gibi görünüyor, ve henüz 7 yıl ve bir gün oldu.