![]() |
|
|
google unix.com
|
|||||||
| Forum | Registrati | Regole Forum | Collegamenti | Album | FAQ | Members List | Calendario | Ricerca | Today's Posts | Mark Forums Read |
| Shell scripting e di programmazione Pubblica domande su KSH, CSH, SH, Bash, Perl, PHP, sed, awk e da altri script di shell e linguaggi di scripting shell qui. |
Più di UNIX e Linux Forum Argomenti potreste trovare utili
|
||||
| Filo | Thread Starter | Forum | Risposte | Ultimo Post |
| Standard: next up, Vincoli di programmazione | iBot | Complex Event Processing RSS News | 0 | 12-12-2008 06:40 AM |
| Unix shell scripting standard | janmolby | Shell scripting e di programmazione | 6 | 03-29-2007 06:22 PM |
| Codifica standard per UNIX shell scripting! | Omkumar | Shell scripting e di programmazione | 1 | 03-28-2005 01:19 PM |
| Shell Coding questione per gli esperti là fuori | dfran1972 | Shell scripting e di programmazione | 4 | 01-12-2004 09:04 AM |
| Unix Coding Standards | himanshu_s | UNIX for Dummies Domande & Risposte | 3 | 12-06-2001 04:34 PM |
![]() |
|
|
LinkBack | Thread Tools | Cerca in questo Thread | Rate Thread | Modalità di visualizzazione |
|
|
|
||||
|
Abbiamo appena avuto un caso in cui trovare i file di script in / tmp o / var / tmp o altre parti del mondo scrivibile dirs, potrebbe essere scritto come collegamenti simbolici unprivileged da un utente di provocare danni.
Non è facilmente sfruttabili a causa del file di output dover NON esistono e anche l'utente sapere quale sarà il nome, ma è possibile. ad esempio, Se user1 (normale utente) ha scritto un link simbolico in / tmp a / etc / passwd user1 # ln-s / tmp / script.out / etc / passwd Poi è venuto lungo uno script in esecuzione come root e create la produzione o il debug o nulla a / tmp / script.out sarebbe quindi sovrascrivere / etc / passwd e, ovviamente, causa problemi al sistema. Come ha detto l'utente avrebbe bisogno di sapere che cosa sarebbe script eseguito come root, e dove la produzione ma la gente a volte dimentica di chmod 750 OT 700 alcuni script. Se pertanto verificare qualsiasi file di output ho intenzione di creare, come qui di seguito: -- Codice:
output_security()
{
# Check any file to be used is not a symlink elswhere.
# If exceptions are needed dont call this function
# This is an e.g so doesn't include checking $@
for FILE in $@
do
if [ -h ${FILE} ];then
print "ERROR: File [${FILE}] is a sym link and not a regular file" >&2
print "Potential Security Risk so exiting" >&2
exit 2
}
outputfile=/tmp/$(basename $0).out
tmpfile=/tmp/$(basename $0).tmp
output_security "${outputfile} ${tmpfile}"
....blah blah
Ultimo a cura di lavascript; al 04/22/2009 10:28 AM.. Motivo: non voglio "," circa $ @ in funzione |
![]() |
| Segnalibri |
| Thread Tools | Cerca in questo Thread |
| Modalità di visualizzazione | Vota questo thread |
|
|