Booter sur un compte utilisateur sans login

Résolu/Fermé
Paqueuc - 24 févr. 2013 à 01:43
 Paqueuc - 24 févr. 2013 à 22:43
Bonjour,

Oui, rien que le titre énerve car c'est une énorme faille de sécurité diront les puristes à juste titre.

Mais

Il s'agit d'un Raspberry Pi transformé en Squeezebox (le système audio multiroom de Logitech) qui utilise une distro Debian. Bref, il n'y a rien dessus d'autre que cette squeezebox. Aucune autre données. Donc si on me la hacke, je m'en remettrai.

Je cherche à éteindre ce RPi quand je ne m'en sers pas (cad 23h par jour, environ, même si un RPi ne consomme "rien".) via un protocole Telnet (oui, une autre faille par rapport au SSH... mais le logiciel (Openremote) qui fait le telnet ne fait pas le SSH...). Actuellement le login / MDP et le message d'accueil qui suit perturbent le Telnet. En résumé, ca ne fonctionne pas.

Il me faudrait pouvoir booter depuis un compte utilisateur lambda et arriver directement sur le prompt sans passer par la case login / mdp. Là, au moment où je veux éteindre, un simple sudo halt ou shutdown -h via Telnet, sans login / mot de passe directement sur le prompt, suffit.

Je me répète, la Difficulté qu'il m'intéresse de résoudre est que cet accès se fera exclusivement headless via Telnet, pas via le clavier branché sur le RPi.

Quelqu'un saurait-il m'aider SVP car là, je suis complètement sec.

Merci.
A voir également:

4 réponses

mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 7 749
24 févr. 2013 à 02:32
En fait conceptuellement le problème c'est que le fait de se logguer permet de connaître plein de chose (l'utilisateur courant, son home etc...). Donc à moins de se logguer arbitrairement avec un login déterminé la question n'a pas vraiment de sens.

En admettant que ce login soit root, à ce moment là ça revient à booter ton noyau en "single". Pendant très longtemps ça te lançait un shell root sans te demander de mot de passe (ce qui n'est plus le cas aujourd'hui), mais j'imagine qu'il y a moyen de retomber dans le contexte précédent...

Bonne chance
0
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 407
24 févr. 2013 à 09:11
Salut,

Voir expect !

0
Bonjour,

Merci pour vos réponses.
Je ferme ce topic pour en ouvrir un autre sous un autre angle d'attaque (supprimer la phrase de bienvenue après le login / mot de passe, qui me donne une erreur telnet).
0
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 407
24 févr. 2013 à 12:05
Re-

J'ai trouvé ça : https://elinux.org/RPi_Debian_Auto_Login

Peut être serait-ce suffisant ?
0
Merci Zipe31.

Oui, j'avais vu cet article intéressant, qui fonctionne parfaitement bien en boot direct sur la machine devant son écran. Mais si j'attaque le Pi par le telnet, j'ai quand même le droit à la procédure de login / Mdp... Arghhh.

Du coup, je viens d'ouvrir un autre topic pour voir si je peux supprimer la phrase d'accueil juste après l'identifiant / mdp qui semble être à l'origine de mes problèmes.

Merci en tout cas.
0
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 407
24 févr. 2013 à 12:20
Je suis tombé là-dessus aussi : http://openremote.io/developers/
0
Oui, également vu, malheureusement.

En fait, je pense que leur telnet est malheureusement trop basique n'autorisant aucune commande qui pourrait adapter le comporter du telnet à quelques cas particuliers. Le Message Of The Day semble perturber la logique : envoie info | réponse attendue | envoi info | réponse attendue...
J'ai l'impression, avec le message d'accueil qui s'insère là dedans, qu'après le password, cela rajoute une étape : message d'information que le telnet ne sait pas gérer. On devrait alors être dans un schéma : envoi info (password) | message info | réponse attendue | envoi info. Mais ça, le telnet openremote ne comprend pas...

Merci en tout cas.
0
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 407
24 févr. 2013 à 13:17
As-tu essayé avec "expect" (cf mon 1er message) au moins ?
Car c'est quand même sa fonction première, prendre en compte ce qui est attendu sur l'écran et agir en conséquence...
0
J'ai commencé à regarder pour faire des tests et voir s'il se dégage une commande que je pourrais implémenter dans OpenRemote.

Cependant, je ne pourrai pas me servir de Expect directement ensuite. L'intérêt d'OpenRemote est que ce logiciel pilote via différents protocoles un ensemble de fonctions de ma maison. Je ne peux donc pas m'en penser et suis obligé de composer avec ses faiblesses (ou les contourner. Je réfléchissais à la possibilité d'éteindre le Pi via une requête http... Je n'ai pas approfondi mais cela pourrait venir si je ne trouve pas de solution via telnet).

Donc je continue de regarder Expect afin d'essayer de comprendre mais je suis d'autres pistes en parallèle.

Merci Zipe31
0
mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 7 749
24 févr. 2013 à 13:08
Ah mais si c'est par telnet que tu veux court-circuiter l'authentification, je pense que c'est au niveau de pam que tu dois intervenir. Du coup ma suggestion du mode single ne répond pas non plus à ta question puisque là aussi c'est "devant ton écran".

Par exemple avec ssh, tu peux dire d'ignorer pam :
https://forum.ovh.com/

Peut-être que c'est faisable avec telnetd... Sinon peut être que dans la configuration de pam elle même tu peux désactiver les authentifications requises par le service telnet... (voir /etc/pam/pam.conf)
https://docs.oracle.com/cd/E19683-01/817-0365/pam-1/index.html

Bonne chance
0
Alors malheureusement, OpenRemote ne gère pas le ssh (que le telnet) et je n'ai pas le répertoire /etc/pam sur mon pi... Bizarre. A te lire je crois comprendre que c'est standard. Mais il n'existe pas sur ma distro.

Je continue de regarder.

Merci.
0
mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 7 749
24 févr. 2013 à 14:47
Comme je t'ai dit il faut simplement regarder si les options de telnet permettent de court-circuiter pam (cf 1er lien). Et le cas échéant dire à pam de ne pas déclencher d'authentification pour telnet (cf 2e lien).

Bonne chance
0
Merci.

Je vais garder cette solution en réserve pour le moment.

J'ai un début de solution en supprimant le Message Of The Day et un autre message parasite de "last login". Je vais essayer de pousser cette idée un peu car elle me parait, de prime abord, plus simple que PAM (j'ai lu en diagonale les pages mais il faudra que j'y passe du temps si je veux comprendre, à mon avis).

Cependant, il est possible que je revienne à PAM rapidement car il me semble qu'OpenRemote comporterait bien un bug de délai d'attente non respecté entre un envoi d'info et une réponse. Et cela me fiche tout à l'eau.

Si je reviens à PAM, je ne manquerai pas de revenir donner quelques news.

Merci en tout cas.
0