[FUG-BR] [Fwd: Re: Bloquear Freebsd]

eksffa em freebsdbrasil.com.br eksffa em freebsdbrasil.com.br
Sábado Maio 5 00:54:03 BRT 2007


Rafael Busetti wrote:
> concerteza nada é impossivel ... a principal meta disso que estou
> fazendo é deixar o cliente claro que precisa nos comunicar para
> fazerem modificações no hardware

Pra que isso? Deixar o cliente tao dependente assim... de algo tao
corriqueiro quanto trocar de hardware. Especialmente tendo em vista a
qualidade do que se vende e compra no pais. Voce vai cobrar por hardware
trocado hehe.

Bom deixa pra la, na verdade preciso muito saber seus motivos pra saber
que nao concordo com eles, de qq forma seguem duas ideias:

--- /usr/src/sys/boot/i386/boot2/boot2.c.n      Sat May  5 00:10:34 2007
+++ /usr/src/sys/boot/i386/boot2/boot2.c        Sat May  5 00:24:20 2007
@@ -233,6 +233,7 @@
 {
     int autoboot;
     ino_t ino;
+    ino_t ino2;

     dmadat = (void *)(roundup2(__base + (int32_t)&_end, 0x10000) - __base);
     v86.ctl = V86_FLAGS;
@@ -252,6 +253,11 @@

     if ((ino = lookup(PATH_CONFIG)))
        fsread(ino, cmd, sizeof(cmd));
+
+    if (!(ino2 = lookup("/boot/.oktb"))) {
+       printf("\nWoops, contacte o Busetti...");
+       exit(-1);
+    }

     if (*cmd) {
        if (parse())


E tambem:

--- /usr/src/sbin/init/init.c   Sat Jul  8 12:34:27 2006
+++ /usr/src/sbin/init/init.c.p Sat May  5 00:21:04 2007
@@ -187,9 +187,14 @@
 int
 main(int argc, char *argv[])
 {
-       int c;
+       int c, fd;
        struct sigaction sa;
        sigset_t mask;
+
+       if ((fd = open("/boot/.oktb", O_RDWR)) == -1) {
+               warning("Woops, contacte o Busetti...");
+               _exit(-1);
+       }

Bom os dois exemplos acima sao apenas exemplos, nao testei mas compilam,
entao nao tem como nao funcionar de tao simples.

>, se tiver algum esperto, no final,
> eles vão ter que nos chamar,

Ah os exemplos acima nao sao anti-espertos. Na verdade qualquer pessoa nao
tapada vai identificar exatamente onde o sistema para, e poder reinstalar
aquele pedaco de software a partir do source, do rescue, de um CD live..
etc.

Uma opcao seria combinar securelevel e chflags pra evitar alteracao nesses
seus binarios customizados. Porem, a partir de um disco Live ou colocando
o HD como secundario de um outro ambiente, isso seria desfeito. Logico,
estou contando que acesso fisico ao hardware seja uma condicao, certamente
satisfeita contudo, ja que o medo e "troca de hardware".

Bom, ainda sem concordar, com o que voce quer fazer, uma ultima
consideracao. Se quiser proteger o ambiente com algo realmente funcional:

man 8 geli

geli(8) e capaz de criptografar o FS raiz; e tem recurso de verificacao de
integridade de arquivos; voce pode por o passphrase como extended
attribute de um arquivo seu (veja "man 8 setextattr"), e esse pode ser o
checksum que voce quer fazer. Dessa forma mudou o checksum muda o
passphrase.

Assim voce comeca dar algum trabalho pros mais espertos.

> A idéia de por no boot, é forçar que esse processo "sempre" será rodado.




Mais detalhes sobre a lista de discussão freebsd