N-PN White-Hat Project
Controle parental - Version imprimable

+- N-PN White-Hat Project (https://dev.n-pn.fr/forum)
+-- Forum : Informatique (https://dev.n-pn.fr/forum/forumdisplay.php?fid=12)
+--- Forum : Logiciel (https://dev.n-pn.fr/forum/forumdisplay.php?fid=35)
+--- Sujet : Controle parental (/showthread.php?tid=2967)



Controle parental - InstinctHack - 03-05-2013

io,

(J'assume le titre du thread :>)
Je me demande comment empecher l'éxécution d'un programme, et pourquoi pas avec des restrictions horaires.
Pour bloquer l'accès à la programme, j'avais penser en premier à un cron qui kill le programme, mais c'est degeu, mais ça pourrais me permettre de tester si il tourne actuellement.

Sinon pour le bloquer, vous feriez comment ?
chmod 000 sur le binaire ?


RE: Controle parental - Creepy_p0ney - 03-05-2013

ah ouais :p interessante question, ça a suscité une autre question dans ma tête, la même chose mais ave cla connexion internet.


RE: Controle parental - Sh4dows - 03-05-2013

Le mieux je pense, serait de disass un contrôle parental Smile

EDIT :
Si on prend comme exemple ça http://www.profiltechnology.com/particulier/parental-filter2
On remarque le mot filtrage dans le titre.. Probablement car ils filtrent les packets et/ou les processus de la machine...


RE: Controle parental - b0fh - 03-05-2013

Hello,

chmod 000 ne sert pas a grand chose; l'utilisateur n'a qu'a choper ailleurs une copie du binaire et lui donner les droits qu'il veut.

Imaginons que tu bloques les binaires en les identifiant par hash. L'utilisateur peut toujours modifier le programme pour casser la signature.

Imaginons que tu bloques les binaires par analyse statique. L'utilisateur peut packer son binaire.

Imaginons que tu bloques les binaires par analyse dynamique, ou filtre les syscalls. L'utilisateur peut essayer d'installer qemu ou virtualbox, et de faire tourner son programme dedans. Donc il te faudra aussi bloquer tous les programmes de virtualisation et d'émulation.

Au final, l'approche par blacklist est vouée a l'échec. Mais tu peux essayer de déterminer un ensemble fixe de programmes autorisés, et ensuite t'assurer que l'utilisateur n'a accès en écriture que sur des filesystems montés avec l'option noexec. De cette manière l'OS refusera d'exécuter ce qui aurait pu être importé de l'extérieur par l'utilisateur.

Evidemment, le problème est que tout ne nécessite pas la permission d'exécution pour ça. Par exemple tous les langages utilisant un exécutable unique pour leur runtime (java, python, php...). Mais bonne chance pour monter une distro moderne sans python et perl.

Conclusion, soit tu n'autorises l'utilisateur ni à avoir un shell ni à uploader aucune forme de code, soit tu admets qu'il va exécuter du code arbitraire et que le contrôle d'accès ne se fera que sur les ressources; tous les autres scénarios sont détournables.

Pour le réseau, c'est encore plus dur; a partir du moment ou t'as du code hostile des deux côtés, le filtrage ne peut être que tout-ou-rien; un simple bit dans un protocole totalement anodin et sans rapport peut être transformé en canal caché.

En gros, le contrôle parental, ça suxe.


RE: Controle parental - notfound - 04-05-2013

Pour la connexion Internet, sur les Livebox tu peux désactiver le WiFi de telle heure à telle heure, sur tel jour etc.


RE: Controle parental - Creepy_p0ney - 04-05-2013

Notfound ouais mais à ce moment là ça desactive sur tout le reseau.


RE: Controle parental - ThibauT - 04-05-2013

Citation :Notfound ouais mais à ce moment là ça desactive sur tout le reseau.

Du tout, tu choisis sur quel(s) appareil(s) tu mets des restrictions horaires (parmis tous les appareils connectés à la Livebox).


RE: Controle parental - supersnail - 04-05-2013

Imho ça doit se faire par un filtrage MAC ou IP...

Dans le pire des cas, tu peux try de spoof l'adresse mac de la carte réseau du PC de tes parents :] (en priant que leur PC balance pas des paquets TCP RST en voyant une connexion qui leur paraît pas clean, j'ai pas trop matté le comportement d'un OS face à des connexions TCP non désirées)


RE: Controle parental - InstinctHack - 04-05-2013

Citation :j'ai pas trop matté le comportement d'un OS face à des connexions TCP non désirées)
Je coderais un os, je droperais :')


RE: Controle parental - gruik - 04-05-2013

Creepy_p0ney a écrit :Notfound ouais mais à ce moment là ça desactive sur tout le reseau

yep complètement, comme dit supersnail le filtrage peut se faire au niveau de la livebox que via un filtrage niveau reseau (MAC/IP) et donc applique une restriction globale à toute la machine

supersnail a écrit :Dans le pire des cas, tu peux try de spoof l'adresse mac de la carte réseau du PC de tes parents

en meme temps la question ici c'etait "comment faire pour mettre en place" pas pour contourner
> 2013
> la "sécurité" perçue par les hackers Wink

InstinctHack a écrit :Je coderais un os, je droperais

yep c'est le cas évidement, par défaut le firewall renvoit un RST (REJECT) sauf DROP explicite dans la conf

InstinctHack a écrit :Je me demande comment empecher l'éxécution d'un programme, et pourquoi pas avec des restrictions horaires.
Pour bloquer l'accès à la programme, j'avais penser en premier à un cron qui kill le programme, mais c'est degeu, mais ça pourrais me permettre de tester si il tourne actuellement.

je suis d'accord que c'est pas très jojo mais dans l'idée on pourrait effectivement envisager un programme appellé depuis cron avec une ligne de commandes par exemple, genre "restrict.sh --autorise-tout", "restrict.sh --active-le-filtrage-pour-les-gosses" etc.
à partir de là le propos c'est d'une part killer les programmes qu'on veut restreindre et qui tournent déjà, avec éventuellement un popup pour dire "warning chérie ca va couper", et d'autre part - c'est le point principal de mon post - limiter/autoriser l'accès au réseau à l'aide des capabilities du noyau linux, on parle de setcap ou directement d'un SElinux par exemple, grsecurity sait aussi faire ce genre de choses il me semble

dans tous les cas sur le fond je rejoins 100% ce que dit b0fh à savoir que ca sux, à plus forte raison parceque sous linux par défaut il n'existe pas justement de relation entre un paquet réseau et un process, on est obligé d'appliquer au minimum un patch kernel pour acceder a des ACL path based ou autre plus ou moins heureuses et qui souvent restent malgré tout contournable, au moins grâce au manque de maîtrise de l'admin local et une configuration approximative de sa part (tout le monde en www-data-nobody.nogroup et vive ptrace)

néanmoins il existait jusqu'à il y a peu encore le projet NuFW qui était à ma connaissance le seul firewall authentifiant sous linux, la derniere fois que j'ai regardé le projet venait d'etre poubellisé apres plusieurs années de bons et loyaux services pour des raisons absurdes de je sais plus quel ordre (site officiel n'existe plus), ça vaut peut-être le coup de chercher malgré tout au besoin...


RE: Controle parental - Machin - 04-05-2013

Le débat est très interessant techniquement parlant mais je suis ettoné que personne n'a commencé par demander le contexte qui à ammener à vouloir mettre ça en place. Perso je suis pragmatique et vous commencez à partir loin sans vraiment savoir quel etait le soucis qui devait etre réglé à la base.

Car je me dis, si je suis le theme des derniers echanges sur le filtrage du net, je regarde autour de moi. 95% des gens ont déjà du mal à faire la difference entre internet et le Web, alors un filtrage par adresse mac ou ip, un blocage au niveau DNS de certains sites va fonctionner souvent.

La discussion est tres interessante mais evidement il est tres dur de se protéger de tout, n'empeche que des gens qui, pour contourner une protection vont aller faire tourner une machine virtuelle, mine de rien, ce n'est pas la majorité des gens. Donc sans le contexte (ie la population qu'il va souhaiter controler), j'ai un peu l'impression que vous sortez un buldozer pour ecraser une mouche.

Apres niveau theorique, j'aime bien la discussion ^^


RE: Controle parental - InstinctHack - 04-05-2013

Ah mais pas du tout machin, le post est technique, j'ai pas besoin d'un controle parental ^^" (quoique avec xchat... :p ), c'est une question que je me pose Smile


RE: Controle parental - Machin - 04-05-2013

Ha ok, je pensais que c'etait pour répondre à un besoin precis. Autant/au temps pour moi alors !