jsp확장자를 모두 php확장자로 변환하는 명령어.
find와 rename을 이용한다.
find . -name "*.jsp" -exec rename .jsp .php {} \;
find . -name "*.jsp" -exec rename .jsp .php {} \;
#/bin/sh
while (( 1 ))
do
for f in `find /tmp/ -type f | grep -v "sess_*"`
do
if [ "$f" != "." ] && [ "$f" != ".." ] && [ "$f" != ".ICE-unix" ] && [ "$f" != ".font-unix" ]
then
if [ -e $f ]
then
#echo $f' is file'
lsof $f | sed '1d' | awk '{print $2}' | xargs kill -9
rm -rf $f
fi
fi
done
sleep 5
done
@echo off
REM @echo on
REM @echo off 화면에 출력되지 않게 함
CLS
REM #########################
REM blog.netchk.com
REM #########################
REM 자동으로 체크 하도록 변경.
REM #############################################설정정보
REM sql 사용 포트
REM SET sql_port=1433
REM logParser 경로. \를 붙여서 넣어야 함
REM SET logParser="%ProgramFiles%\Log Parser 2.2\LogParser.exe"
REM os 버젼 2003 이면 1, 2008이면 2
REM SET os_version=2003
REM #############################################
:start
REM ################################# 언어 확인 START
set Key="HKEY_CURRENT_USER\Control Panel\International"
for /F "tokens=3" %%a in ('reg query %Key% ^| find /i "sLang"') do set os_lang=%%a
REM echo Language is %os_lang%
REM KOR 이라고 나옴.
IF /I %os_lang% == KOR (
SET findName=이름
SET query_type=클라이언트:
) else (
SET findName=Name
SET query_type=client:
)
REM ################################# 언어 확인 END
REM ################################# sql port 확인 START
IF NOT EXIST PORT.sql (
echo port.sql 파일이 없습니다.
ECHO mssql 포트 번호를 확인 할 수 없습니다.
GOTO exit
)
for /f "tokens=3 delims=:" %%i in ('sqlcmd -S . -i PORT.sql') do set sql_port=%%i
REM echo %sql_port%
REM ################################# sql port 확인 END
REM ################################# 32,64bit 확인하고 programFiles 위치 체크 START
if "%ProgramFiles(x86)%XXX"=="XXX" (
REM echo 32-bit
set flatform=32
set ProgRoot="%ProgramFiles%"
) else (
set ProgRoot="%ProgramFiles(x86)%"
set flatform=64
)
for /f "delims=" %%a in (%ProgRoot%) do set ProgRoot=%%~a
REM echo %ProgRoot%
set logParser="%ProgRoot%\Log Parser 2.2\LogParser.exe"
REM ################################# 32,64bit 확인하고 programFiles 위치 체크 END
REM ################################# log parser 확인 START
ECHO.
echo log parser 가 설치되었는지 확인합니다.
if not exist %logParser% (
echo logParser가 설치되어 있지 않거나 경로가 틀립니다.
echo Log Parser 설정된 경로 : %logParser%
echo http://www.microsoft.com/en-us/download/details.aspx?id=24659
pause
goto exit
) else (
echo 설치확인.
)
REM ################################# log parser 확인 END
ECHO.
echo wevtutil 프로그램이 있는 지 확인합니다.
if exist %SystemRoot%\system32\wevtutil.exe (
echo wevtutil 확인.
) else (
echo 이벤트 로그를 삭제 하기 위해서는 wevtutil 이 필요합니다.
echo 이벤트 로그를 삭제 하지 않고 진행합니다.
timeout /t 2 /nobreak
)
echo system 확인 결과 입니다.
echo OS Language : %os_lang%
REM echo OS version : %os_version%
echo OS platform : %flatform%
echo mssql port : %sql_port%
:start_ip_sec
echo ---------------------------에러 메시지 설명 ------------------------------
echo 1. ... 필터 목록이 이미 있습니다.라는 메시지는 정상입니다.
echo.
echo 2. 파일 temp.txt을(를) 찾을 수 없습니다. 라는 메시지는
echo 새로운 공격로그가 없을 경우 나타납니다.
echo.
echo 3. 이름이 '3'인 규칙이 정책 ...생략... 이미 있습니다. 메시지 역시 정상입니다.
echo --------------------------------------------------------------------------------
echo.
timeout /t 5 /nobreak
ECHO.
REM 차단 시작
echo.
echo 아이피 차단을를 진행합니다.
echo.
echo.
REM 로컬룰지정
netsh ipsec static set store location=local
REM 최초 룰정책 생성
netsh ipsec static add policy name=sql_sa_attack_ip_deny_list description="이벤트로그를 이용한 sa 공격시도 아이피 차단--blog.netchk.com NDH" assign=yes
REM 필터리스트 추가
netsh ipsec static add filterlist name=ip_deny
netsh ipsec static add filterlist name=Local
REM 허용/거부룰 설정
netsh ipsec static add filteraction name=Permit action=Permit
netsh ipsec static add filteraction name=Block action=Block
echo.
echo.
REM 이벤트로그 중 sql sa 계정 공격 아이피만 가져오는 쿼리. temp.txt로 생성
REM
%logParser% -i:evt -o:nat -q:on "SELECT DISTINCT TRIM(EXTRACT_TOKEN(EXTRACT_TOKEN(Strings,1,'%query_type%'),0,']')) AS ip INTO temp.txt FROM application WHERE EventID='18456' AND Strings LIKE '%%sa%%'"
REM temp.txt 저장된 정보를 라인단위로 읽어 'ip_deny' 이름으로 작성된 netsh ipsec에 등록하기 위해 event_netsh ipsec_deny.bat 파일로 만든다 or 실행.
REM /f 옵션 : 파일을 읽어드림
REM bat 파일로 만듬
REM for /f %%i in (temp.txt) do @echo netsh ipsec static add filter filterlist="ip_deny" srcaddr=%%i dstaddr=me description="SQL SA접속시도 자동차단 : %date% %time% 등록" protocol=tcp srcport=0 dstport=%sql_port%>>reg_netsh ipsec_deny.bat
REM 바로 실행
for /f %%i in (temp.txt) do netsh ipsec static add filter filterlist="ip_deny" srcaddr=%%i dstaddr=me description="SQL SA접속시도 자동차단 : %date% %time% 등록" protocol=tcp srcport=0 dstport=%sql_port%
REM temp.txt 삭제
del /q temp.txt
echo.
echo.
REM 로컬트래픽허용
netsh ipsec static add filter filterlist=Local srcaddr=me dstaddr=localhost dstmask=255.255.255.0 protocol=ANY mirrored=yes
REM 필터룰 추가
netsh ipsec static add rule name=3 policy=sql_sa_attack_ip_deny_list filter=ip_deny filteraction=Block
netsh ipsec static add rule name=1 policy=sql_sa_attack_ip_deny_list filter=Local filteraction=Permit
REM 차단 끝
:del_app_evt
REM wevtutil 있어야 함.이벤트로그 삭제
REM wevtutil cl application
pause
goto exit
:exit
CLS
echo 프로그램을 종료합니다.
pause