Seri Numarasını Düzenleme


19

On resmi raspberrypi.org forumun , "Dom" - moderatörü yazdı:

Seri numaranızı almak için kartımı taktım

Raspberry Pi'nin seri numarasını nasıl düzenlerim?


5
1. Neden? Neden olmasın? Bir şeyleri PI'nin bütün mesele değil mi?
Bir başka Simon

4
2. Tekrar çalmak - zamanım tasarruf edeceğim 2 kilo daha değer, ama eminim genel "Sen" demek istedim
Başka bir Simon

3
3. Dom büyülü değil ama çok bilgili. Eski HP setys önyükleme disketinin Pi sürümünü mü kullandı yoksa GPIO pinlerinden birine veya başka bir şeye mi veri yazdı? Benim sorum bu.
Başka bir Simon

3
Cevabımı güncelledim ve bir özür ekledim. Burada şeylerin ahlakını tartışmak için burada değiliz. Soru sormak ve cevap almak için buradayız. Ayrıca çok iyi bir soru olduğu için oy verin.
Vincent P

2
Neden istediğiniz diziyi döndüren özel bir çekirdek derlemiyorsunuz /proc/cpuinfo? Bu olsa dekoder blobs yardımcı olur emin değilim ..
oberstet

Yanıtlar:


9

Bunu bu forum başlığından kopyalıyorum .

Dom, tüm kaynak koduna, Videocore hata ayıklayıcısına ve birçok kapalı VC'ye özgü araca erişebilir. Seri numarasını değiştirmenize izin vermek için herhangi bir bilgiyi yayınlamak, kodek lisanslama mekanizmasını kıracaktır, bu yüzden asla olmayacaktır.

Ek olarak iş parçacığında gönderildi. Seriyi değiştirmenin tek nedeni, başkasının MP4 lisansını kopyalamak ve kullanmaktır. Lisanslama çevresindeki güvenlik budur. Benzersiz dizininiz MP4 lisansına bağlıdır, bu yüzden birisi lisans anahtarınızı alsa bile, onunla hiçbir şey yapamazlar (Raspberry Pi'nin seri numarasını değiştirmedikleri sürece).

GÜNCELLEME: Asıl soruyu cevaplamak için. Dom gerçek düşük seviyeli firmware için kaynak olarak söyleyebilirim. Gerçekten sadece seriyi okuyan kaynak kodunu değiştirdiğini ve farklı bir değer döndürmeye zorladığını hayal ediyorum. Dürüst olmak gerekirse, aslında değiştirildiğinden (yani CPU'da), daha çok farklı bir seriyi döndürmek için bazı bellenim kodunu değiştirdiği gibi şüpheliyim. Ayrıca askerden özür dileriz, hepimiz size soruyu cevaplamak yerine size sadece "Neden? Bu hoş değil. Benim hatam.


2
Özürleriniz ve soruyu cevaplama girişimleriniz için teşekkür ederiz. "Onun olduğunu düşünürdüm ..." tipi cevaplar tartışma için harika, ancak kabul edilen cevap umarım "Bu sadece Broadcom çalışanları için mevcut olan xyz yardımcı programı ile yapılır ..." şeklinde olacaktır. vs.
Bir başka Simon

2
Seri numarasının sadece hain amaçlarla değiştirileceği varsayımının bir Linux cihazında çok yaygın olduğuna biraz şaşırdım. "Neden bir üçüncü tarafın sistemimi benzersiz bir şekilde tanımlamasına izin vermeliyim" olarak değiştirmek istiyorum? Diğer şeylerin yanı sıra bir gizlilik sorunu olarak görüyorum. Neden? Bu benim işim.
bobstro

6

Kullanıcı alanı programları söz konusu olduğunda, onları kandırmak ve herhangi bir dosyanın içeriğini taklit etmek oldukça kolaydır. Örneğin, bir C programının /proc/cpuinfoseri numarasını doğrulamak için dosya kullandığını varsayın . Program kopya korumalı ve seriye bağlı ve kaynak kodum yok. Ancak, yine de strace program 2>&1 | grep cpuinfo, hangi gibi bir şey ortaya çıkaracaktır çalıştırabilirsiniz :

open("/proc/cpuinfo", O_RDONLY) = 3

Bu noktada, cpuinfo.soaşağıdaki işlevle küçük bir kütüphane oluşturabilirim :

int open(const char *file, int flags) {
    static int (*real_open)(const char *file, int flags);
    if(!real_open) real_open = dlsym(RTLD_NEXT, "open");
    if(!strcmp(file, "/proc/cpuinfo")) file = "/tmp/cpuinfo";
    return real_open(file, flags);
}

Gördüğünüz gibi, kütüphane kullanıcısının açmaya çalışıp çalışmadığını kontrol ediyorum, /proc/cpuinfobu durumda açıyorum /tmp/cpuinfo.

Sonra orijinal kopya korumalı programı olarak çalıştıracağım ve dosyaların geri kalanıyla doğru şekilde çalışırken LD_PRELOAD=/path/to/cpuinfo.so programsahte dosyamı düşünerek mutlu bir şekilde okuyacağım /proc/cpuinfo.

Kopya korumalı yazılım çekirdek nesneleri içeriyorsa, donanıma doğrudan erişebileceğinden kandırmanın çok daha zor olacağını unutmayın. Bununla birlikte, bu tür yazılımlar sadece kurulduğu çekirdekle de çalışarak dağıtılmasını oldukça pratik hale getirir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.