Cosa fa#
Mostra il contenuto di un file una schermata alla volta. Se tutto il testo entra in una schermata, stampa e termina subito. Se non entra, va in modalità interattiva e aspetta input.
TL;DR#
more file.txt # mostra il file una schermata alla voltaComportamento chiave:
- Testo corto → stampa tutto e termina subito
- Testo lungo → entra in modalità interattiva con prompt
--More--
Modalità interattiva — comandi#
| Tasto | Cosa fa |
|---|---|
Spazio | Pagina successiva |
Invio | Riga successiva |
q | Esci |
v | Apri il file in vim — vettore di escape |
/pattern | Cerca testo |
h | Help |
more vs less#
more → vecchio, va solo avanti, esce quando finisce il file
less → moderno, va avanti e indietro, non esce alla fineless e' quasi sempre preferibile a more — ma more e' presente su tutti i sistemi Unix anche minimali, quindi lo incontrerai spesso.
Scenario Reale — Bandit 25#
Lo script /usr/bin/showtext di bandit26 usava more per mostrare
un file di testo breve:
#!/bin/sh
export TERM=linux
more ~/text.txt
exit 0Su un terminale normale il testo entrava in una schermata → more terminava subito → lo script faceva exit 0 → connessione chiusa.
L'exploit: rimpicciolire il terminale finché il testo non entra piu' in una schermata → more va in modalità interattiva → premi v → si apre vim → da vim si ottiene una shell bash:
:set shell=/bin/bash
:shellQuesto e' un esempio classico di living off the land — usare strumenti legittimi del sistema per fare cose non previste. more, vim, less, man sono tutti potenziali vettori di escape da shell ristrette.


