Sponsored Content
Top Forums UNIX for Beginners Questions & Answers Execute a script once a file uploaded to directory Post 303045595 by Abu Rayane on Thursday 2nd of April 2020 05:44:45 PM
Old 04-02-2020
Here you go
Code:
#!/bin/sh

# Some vars here

# Dangerous files, extensions and shells
SHELLDETECT=$( find /home/uvid/www/Uploads/ -type f \( -iname "1.*" -o -iname "*eicar*" -o -iname "*.php" -o -iname "*.pl" -o -iname "*.txt" -o -iname "*.py" -o -iname "*.c" -o -iname "*.deb" -o -iname "*.zip" -o -iname "*.tar" -o -iname "*.gz" -o -iname "*.tar.gz" -o -iname "*.js" -o -iname "*.vbs" -o -iname "*.exe" -o -iname "*.asp" -o -iname "*.jsp" -o -iname "*.cgi" -o -iname "c100*" -o -iname "c99*" -o -iname "cmd*" -o -iname "webadmin*" -o -iname "r57*" -o -iname "*shell*" -o -iname "*angel*" -o -iname "*b374k*" -o -iname "*bv7binary*" -o -iname "*webroot*" -o -iname "*kacak*" -o -iname "*symlink*" -o -iname "*h4cker*" -o -iname "*gazashell*" -o -iname "*locus7shell*" -o -iname "*syrianshell*" -o -iname "*injection*" -o -iname "*cyberwarrior*" -o -iname "*ernebypass*" -o -iname "*g6shell*" -o -iname "*pouyaserver*" -o -iname "*saudishell*" -o -iname "*simattacker*" -o -iname "*sosyeteshell*" -o -iname "*tryagshell*" -o -iname "*uploadshell*" -o -iname "*wsoshell*" -o -iname "*weevely*" -o -iname "*zehir4shell*" -o -iname "*lostdcshell*" -o -iname "*commandshell*" -o -iname "*mailershell*" -o -iname "*cwshell*" -o -iname "*iranshell*" -o -iname "*indishell*" -o -iname "**g6sshell" -o -iname "*sqlshell*" -o -iname "*simshell*" -o -iname "*tryagshell*" -o -iname "*zehirshell*" -o -iname "*unknown*" -o -iname "*k2ll33d*" -o -iname "*b1n4ry*" \) )

if [[ $? == "0" ]]
then
echo "$SHELLDETECT" | mail -s "Shell bad extensions $TODAY" "$EMAIL"
fi


# Find large strings, more than 100 chars
largeStrings=$( find /home/immo/uvid/Uploads/ -type f -exec grep -Eq '.{100}' {} \; -exec ls -l {} + )

if [[ $? == "0" ]]
then
echo "$largeStrings" | mail -s "Large strings $TODAY" "$EMAIL"
fi


# Find files that was modified or created in last 24 hours
# -1 the last 24 hours
# -0.5 the last 12 hours
# -0.25 the last 6 hours
# +3 more than three days
# 0 Files modified between now and 1 day ago
     # (i.e., within the past 24 hours)
# 1 Files modified between 24 and 48 hours ago
# +1 Files modified more than 48 hours ago
modifFiles=$( find '/home/immo/uvid/Uploads/' -mtime 0 -ls )

if [[ $? == "0" ]]
then    
	echo "$modifFiles" | mail -s "Modified files $TODAY" "$EMAIL"
fi


Last edited by Abu Rayane; 04-02-2020 at 07:33 PM..
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How to make sure a file is uploaded in its entirety

Hi, I have a client who uploads files to my FTP server on a regular basis. Instead of checking the server all the time, I wrote a script that e-mail me to let me know that there is a new file and attaches is it in the e-mail (they're all small compressed archives). The potential issue with the... (4 Replies)
Discussion started by: ph0enix
4 Replies

2. Shell Programming and Scripting

How to execute script on files in another directory?

Hi Guys, Is there any way I can execute my bash script on files in a different folder than what the script is in? Here is an excerpt of my script: #!/usr/bin/bash input_path="/cygdrive/c/files" output_path="/cygdrive/c/files/data" #script uses files from /cygdrive/c/files directory,... (1 Reply)
Discussion started by: npatwardhan
1 Replies

3. Shell Programming and Scripting

Execute unix shell script to text file using the script

Hi all, I am beginner in UNIX...I want to use unix shell script to create text.file...I know how to use using by command...can anybody tell me for the script? Thanks i changed the threads title from "tex file" to "text file", because "tex" would probably be misunderstood as reference to... (4 Replies)
Discussion started by: mastercar
4 Replies

4. Shell Programming and Scripting

Not to execute any graph if the file in a directory is zero bytes

How to code shell script to know if the file in a dirctory is empty i.e., zero byte then not to execute any graph.Please help on this thanks in advance. ---------- Post updated at 08:18 AM ---------- Previous update was at 08:14 AM ---------- I know if clause wil help.my question is how to... (7 Replies)
Discussion started by: vamsi86
7 Replies

5. UNIX for Dummies Questions & Answers

File uploaded via FTP not visible from Command Line

I am using VSFTPD on amazon web services and have a remote service that uploads files to server via FTP. The files comes through fine and when I log in via FTP client I see them. The problem is the files are supposed to be moved once uploaded but the files are not visible via command line thus the... (2 Replies)
Discussion started by: theman0684
2 Replies

6. Shell Programming and Scripting

How to execute korn shell script from different directory

Guy's , I need to run korn shell script from different directory, usually I run the script using ./details.ksh in the same directory but now I need to run the file and process details using awk code. Now I am running the script this way but with no luck Directory = home/users/work ... (3 Replies)
Discussion started by: James_Owen
3 Replies

7. UNIX for Dummies Questions & Answers

Execute a command in different directory through Unix Script

Hi Gurus, I have the below requirement, Execute an unix script which will pick the latest file from the archive directory and do a grep (on multiple patterns) on that file. processingDir="/usr/apps/irdc/informatica/spsf_sales/TgtFiles/ARCHIVE" filename = 'ls Check* | sort -n -k 2 |... (6 Replies)
Discussion started by: diva_thilak
6 Replies

8. Shell Programming and Scripting

Shell scripting-I need a script which should watch a directory for a file with specific directory

I need a script which should watch a directory for a file with specific directory. If it finds a file in directory, it should search for few specific keyword in the file. if the keyword exists, it should trim string from specific column. The file should be moved to another directory and the a... (8 Replies)
Discussion started by: akashdeepak
8 Replies

9. Red Hat

Chroot: cannot execute /bin/sh: No such file or directory

Hi Expert, I'm having grub problem here: grub> root (hd0,0): Filesystem type is ext2 grub> setup Error 11 : Unrecognized Device String I try install boot loader follow the instruction from 26.2. Booting into Rescue Mode It says : select Continue, it attempts to mount your file... (4 Replies)
Discussion started by: justbow
4 Replies

10. Shell Programming and Scripting

Shell script cannot create directory and move the file to that directory

I have a script, which is checking if file exists and move it to another directory if then mkdir -p ${LOCL_FILES_DIR}/cool_${Today}/monthly mv report_manual_alloc_rpt_A_I_ASSIGNMENT.${Today}*.csv ${LOCL_FILES_DIR}/cool_${Today}/monthly ... (9 Replies)
Discussion started by: digioleg54
9 Replies
OSGMLNORM(1)							     Reference							      OSGMLNORM(1)

NAME
osgmlnorm - An SGML/XML document normalizer SYNOPSIS
osgmlnorm [-CdeghmnrRvx] [-alinktype] [-Aarchitecture] [-bbctf] [-ccatalog] [-Ddirectory...] [-Emax_errors...] [-iname...] [-fname...] [-wwarning...] [sysid...] DESCRIPTION
osgmlnorm prints on the standard output a normalized document instance for the SGML document contained in the concatenation of the entities with system identifiers When the normalized instance is prefixed with the original SGML declaration and prolog, it will have the same ESIS as the original SGML document, with the following exceptions: * The output of osgmlnorm does not protect against the recognition of short reference delimiters, so any USEMAP declarations must be removed from the DTD. * The normalized instance will use the reference delimiters, even if the original instance did not. * If marked sections are included in the output using the -m option, the reference reserved names will be used for the status keywords even if the original instance did not. * Any ESIS information relating to the SGML LINK feature will be lost. The normalized instance will not use any markup minimization features except that: * Any attributes that were not specified in the original instance will not be included in the normalized instance. (Current attributes will be included.) * If the declared value of an attribute was a name token group, and a value was specified that was the same as the name of the attribute, then the attribute name and value indicator will be omitted. For example, with HTML osgmlnorm would output <DL COMPACT> rather than <DL COMPACT="COMPACT"> Part of an SGML System Conforming to International Standard ISO 8879 -- Standard Generalized Markup Language. An SGML Extended Facilities system conforming to Annex A of International Standard ISO/IEC 10744 -- Hypermedia/Time-based Structuring Language. The following options are available: -aname, --activate=name Make doctype or linktype name active. -Aarchitecture, --architecture=architecture Parse with respect to architecture architecture. -bbctf, --bctf=bctf Use the BCTF with name bctf for output. -csysid, --catalog=sysid Map public identifiers and entity names to system identifiers using the catalog entry file whose system identifier is sysid. -C, --catalogs This has the same effect as in onsgmls(1). -d, --dtd Output a document type declaration with the same external identifier as the input document, and with no internal declaration subset. No check is performed that the document instance is valid with respect to this DTD. -Ddirectory, --directory=directory Search directory for files specified in system identifiers. This has the same effect as in onsgmls(1). -e, --open-entities Describe open entities in error messages. --error-numbers Show error numbers in error messages. -g, --open-elements Show the generic identifiers of open elements in error messages. -h, --help Display a help text and exit. -iname, --include=name This has the same effect as in onsgmls(1). -m, --marked-sections Output any marked sections that were in the input document instance. -n, --comments Output any comments that were in the input document instance. -r, --raw Raw output. Don't perform any conversion on RSs and REs when printing the entity. The entity would typically have the storage manager attribute records=asis. -R, --restricted This has the same effect as in onsgmls(1). -v, --version Print the version number. -wtype Control warnings and errors according to type. This has the same effect as in onsgmls(1). SEE ALSO
onsgmls(1), ospam(1), ospent(1), osx(1) AUTHORS
James Clark Author. Ian Castle <ian.castle@openjade.org> Author. COPYRIGHT
OpenJade January 2002 OSGMLNORM(1)
All times are GMT -4. The time now is 02:53 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy