비프(beep)에러음에 관하여

비프음이란 시스템에 이상이나 Error가 발생할 경우 내장된 스피커로 소리를 내어 user에게 알려는 역할을 하여 문제 해결하는데 도움을 주는 기능이다.

이 기능은 포스트 POST (Power on Self Test)과정에서 담당을 한다.

POST란 컴퓨터에 전원이 켜지면서 부터 CPU, 키보드,그래픽카드, 메모리등 각종 하드웨어의 정상적인 동작을 하는지 이상유무를 상태를 검사하고 컴퓨터 시스템이 동작할 수 있도록 초기화 작업을 수행하는 일련의 과정에을 말하며, 이 과정에서 문제가 발생하면 오류항목을 '삑' 소리(beep음)으로 소리를 내던지 메세지를 화면에 표시하며, 다음과정으로 넘어가지 못하면 해당 메세지가 하드웨어적으로 치명적인 오류로 판단하여 컴퓨터는 멈추게 된다.

* BIOS에 따른 Beep

# AWARD BIOS

비프음 내용
길게 1번, 계속 메모리를 모듈에서 분리하여 다시 장착해본다.
계속되는 비프음 전원이나 파워서플라이, 메인보드를 점검해 본다.
짧은 비프음 연속

확장슬롯에 꽃인 카드를 점검해 본다.

길게 한 번 짧게 한 번 메인보드를 점검
길게 한 번 짧게 두번 후 길게 한 번 길게 세 번 그래픽카드를 점검
짧은 비프음과 화면에 'keyboard error' 키보드 접속불량

# AMI BIOS

비프음 내용
1회,2회,3회 메모리 이상, 모듈에서 분리하여 다시 장착해 본다.
5회, 7회 CPU의 문제, CPU를 분리하여 다시 장착해 본다.
6회 키보드가 제대로 꽂혀있는지 확인해본다.
8회 그래픽카드 문제, 슬롯에서 분리하여 다시 꽂아본다.

AMI BIOS 비프음에 대해 자세히 살펴보면 다음과 같다.

비프음 에러 내용 해결방법
1번 Refresh Failure 메인보드의 메모리 리프레시 회로의 이상 메모리를 다시 장착 또는 리프레시회로 (주기판의 칩셋에 내장)의 오류이면 메인보드 교체 필요.
2번 Parity Error 메모리의 첫번째 64KB에서 패리티 에러 발생 메모리 장착의 불량메모리 모듈을 다시 장착하거나 교체 필요.
3번 Base 64KB Memory Failure 첫번째 64KB메모리에서 이상 발생
4번 Timer Not Operational 타이머가 동작하지 않거나 첫 번째 64KB에서 메모리의 이상 메인보드를 재장착 하거나 교체 필요.
5번 Processor Error CPU 에러 발생
6번 키보드 컨트롤러/8042 Gate A20 Failure 보호모드로의 전환 불가능 키보드 컨트롤러칩의 오류로 칩의 교체나 메인보드의 교체가 필요.
7번 Processor Exception Interrupt Error CPU에서 예외 상황 에러 발생 메인보드를 재장착 하거나 교체한다.
8번 Display Memory Read/Write Error 비디오 어댑터의 에러 혹은 비디오 메모리의 이상 비디오 카드의 메모리 카드나 자체의 교체가 필요.
9번 Rom Checksum Error 바이오스에서 저장한 수치와 롬의 체크섬이 틀림 바이오스 롬의 상태가 좋지 않음.잘못 장착되었거나 어떤 문제로 인해 시스템에 새로운 바이오스 롬으로 교체필요.
10번 CMOS Shutdown Register Read/Write Error CMOS램을 위한 셧다운 레지스터의 이상 메인보드를 재장착하거나 교체 필요.
11번 Cache Memory Bad-do Not enablecache Cache Memory 이상 증상이 계속되면캐쉬메모리 교체필요.

Posted by onewater
,

http://cafe.naver.com/sqlmaster.cafe?iframe_url=/ArticleRead.nhn%3Farticleid=1755

인젝션공격 으로 인해서 모든 테이블에 아래와 같은 스크립트들이 입력되어 있는 경우가 있습니다.
전체테이블들의 스크립트를 삭제하는 커서를  만들었습니다.

-- 스크립트의
--<script src=http://www.encode72.com/b.js></script>
--<script src=http://www.win496.com/b.js></script>
--<script src=http://www.sslput4.com/b.js></script>
--<script src=http://www.rundll841.com/b.js></script>
--<script src=http://www.advertbnr.com/b.js></script>
--<script src=http://www.siteid38.com/b.js></script>
--<script src=http://www.cookieadw.com/b.js></script>

declare @name sysname, @id int
declare @sname sysname,@xtype int
declare @sql varchar(1000) , @b_data varchar(1000), @a_data varchar(10)

set @b_data='<script src=http://www.cookieadw.com/b.js></script>'  -- 변경할문자(스크립트)
set @a_data=''''''                                                                            -- 변경될문자(공백문자)

DECLARE MYCUR CURSOR FOR

-- 사용자테이블
 select name,id from dbo.sysobjects where xtype='U'
     
OPEN  MYCUR
FETCH NEXT FROM MYCUR INTO @name, @id

WHILE (@@FETCH_STATUS = 0)
 BEGIN
  DECLARE subcur CURSOR FOR

  --컬럼 데이터타입이 VARCHAR, CHAR , NVARCHAR, NCHAR 형인것만
   select name,xtype from dbo.syscolumns
   where xtype in (
    167 -- varchar
    ,175 -- char
    ,231 --nvarchar
    ,239 --nchar

    )
    and id=@id 
   
  OPEN subcur
  FETCH NEXT FROM subcur INTO @sname,@xtype
  WHILE (@@FETCH_STATUS = 0)
   BEGIN

     -- REPLACE 사용한 업데이트 (동적sql)
      set @sql=' update dbo.' + @name + ' set ' + @sname + ' = replace(' + @sname + ',''' + @b_data + ''',' + @a_data +')'
      exec   ( @sql)
   
   FETCH NEXT FROM subcur INTO @sname,@xtype
   END
  CLOSE  subcur
  DEALLOCATE  subcur  
  FETCH NEXT FROM MYCUR INTO @name, @id
 END

CLOSE  MYCUR
DEALLOCATE  MYCUR


Posted by onewater
,

mssql 전체 테이블 문자 검색 변경

angel830514 2008.06.03 13:48

답변 2 NEW | 조회 517

MSSQL에 웹해킹으로 DB안에 특정 사이트로 이동하는 자바스크립트 문을 넣어놨는대요.


예를 들어 게시판이라면 제목과 본문뒤에 <script ....> 와 같은 글을 적어놨습니다.


문제는 회원 아이디부분에도 들어가 스크립트만 싹 지워야하는대


 전체 테이블에서 해당 문자 검색해서  해당 문자만 변경하게 할려면 어떻게 해야하나요?


테이블 수가 많아 하나하나 노가다 하기는 너무 많습니다.


방법즘 알려주세요.

질문자 선택

re: mssql 전체 테이블 문자 검색 변경

resetman71

답변채택률 72.7%

2008.06.03 16:21

질문자인사 알려주신 내용을 기반으로 보강해서 수정했습니다. 감사합니다.

검정된 쿼리입니다.

검색 쿼리와 추가된 <script 등을 제거해주는 쿼리입니다.


아래의 쿼리를 돌리기 전에 해당 DB로 가셨어 각 DB마다 확인을 하신 후 발견되시면 제거해주면
됩니다.


* Script 삽입 공격을 당했는지 확인하는 쿼리

DECLARE @T varchar(255), @C varchar(255);
DECLARE Table_Cursor CURSOR FOR
SELECT a.name, b.name
FROM sysobjects a, syscolumns b
WHERE a.id = b.id AND a.xtype = 'u' AND
(b.xtype = 99 OR
b.xtype = 35 OR
b.xtype = 231 OR
b.xtype = 167);
OPEN Table_Cursor;
FETCH NEXT FROM Table_Cursor INTO @T, @C;
WHILE (@@FETCH_STATUS = 0) BEGIN

exec ('select ['+@C+'] from ['+@T+'] where ['+@C+'] like ''%<script%</script>''');
-- print 'select ['+@C+'] from ['+@T+'] where ['+@C+'] like ''%<script%</script>'''

  FETCH NEXT FROM Table_Cursor INTO @T, @C;
END;
CLOSE Table_Cursor;
DEALLOCATE Table_Cursor;

* 위의 공격을 당했을 때 복원하는 쿼리 (100% 다 되는 것은 아님 - 별도 확인 필요)

* 해킹 시 길이가 긴 경우에는 짤리고 들어가는 현상이 발생함 - 이 경우에는 복원을
해도 원상복구가 안됨

* 백업 받은 것을 복원하는 수 밖에는 없음

DECLARE @T varchar(255), @C varchar(255);
DECLARE Table_Cursor CURSOR FOR
SELECT a.name, b.name
FROM sysobjects a, syscolumns b
WHERE a.id = b.id AND a.xtype = 'u' AND
(b.xtype = 99 OR
b.xtype = 35 OR
b.xtype = 231 OR
b.xtype = 167);
OPEN Table_Cursor;
FETCH NEXT FROM Table_Cursor INTO @T, @C;
WHILE (@@FETCH_STATUS = 0) BEGIN
  EXEC(
    'update ['+@T+'] set ['+@C+'] = left(
            convert(varchar(8000), ['+@C+']),
            len(convert(varchar(8000), ['+@C+'])) - 6 -
            patindex(''%tpircs<%'',
                      reverse(convert(varchar(8000), ['+@C+'])))
            )
      where ['+@C+'] like ''%<script%</script>'''
      );
  FETCH NEXT FROM Table_Cursor INTO @T, @C;
END;
CLOSE Table_Cursor;
DEALLOCATE Table_Cursor;

꼭 복구하시기 바랍니다. 홧팅.

그 외 답변들 1

받은 추천순 | 최신순

re: mssql 전체 테이블 문자 검색 변경

warez104

답변채택률 89.2%

2008.06.03 14:19

시스템 테이블인 sysobjects테이블과 syscolumns테이블을 이용해서
스크립트를 생성해서 EXEC명령으로 실행하는 방법이 있습니다.


대충 만들어보면...

DECLARE @SQL varchar(1000), @TableName varchar(128),
@ColumnName varchar(128), @SearchText varchar(1000)

SET @SearchText = '<SCRIPT>
...
...
</SCRIPT>
'

DECLARE cur_COLUMNS CURSOR FOR
SELECT TableName = m.name, ColumnName = d.name
  FROM sysobjects m, syscolumns d
 WHERE m.xtype = 'U' AND m.id = d.id

OPEN cur_COLUMNS

FETCH NEXT FROM cur_COLUMNS
INTO @TableName, @ColumnName

WHILE @@FETCH_STATUS = 0
BEGIN
    SET @SQL = 'UPDATE ' + @TableName + ' SET ' + @ColumnName +
 ' = REPLACE(' + @ColumnName + ', ''' + @SearchText + ''', '''' )'
    EXEC @SQL
    FETCH NEXT FROM cur_COLUMNS
    INTO @TableName, @ColumnName
END

CLOSE cur_COLUMNS
DEALLOCATE cur_COLUMNS

이런 식으로 녹색 부분에 찾아서 없앨 텍스트를 적고,
SQL문자열을 만들어서 실행하는 방법이 있습니다.


출처 : 직접서술

Posted by onewater
,
이전 1 ··· 15 16 17 18 19 20 다음