블로그 이미지
010-9967-0955 보미아빠

카테고리

보미아빠, 석이 (500)
밥벌이 (16)
싸이클 (1)
일상 (1)
Total
Today
Yesterday

달력

« » 2024.5
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

공지사항

최근에 올라온 글

.

bootimg.zip

 

hpusbtool.zip

 

 

 

 

 

Posted by 보미아빠
, |
http://www.phpschool.com/gnuboard4/bbs/board.php?bo_table=any&wr_id=1080&page=1

 

Sath, The PPP adapter is created by Dial-Up Networking. Un-installing
Dial-Up Networking (Control Panel | Add/Remove Programs | Windows
Setup | Communications) will remove it. It will also prevent the
computer from making a dial-up Internet connection.

이라고 합니다.

http://www.windowskb.com/Uwe/Forum.aspx/windows-me-networking/1557/PPP-Adapter

 

 

사보텐더님 고맙습니다

망할 잡놈해커가
레지스트리키에 해당 스냅인을 disable 시켜 놔서
라우터및원격억세스 관리자가 실행이 안되었었습니다

다시말해
HKEY_CURRENT_USER\Software\Policies\Microsoft\MMC 항목에
restrict_run 항목을 지웠더니 .. 관리자가 실행이 되었고
서비스를 멈출 수 있었습니다

ARP 스푸핑 공격을 당한거라고 하는데
어디서 어떻게 고쳐야 할지 .. 아직 감감이네요 ..

고맙습니다

 

 

ARP 스푸핑(ARP spoofing)은 근거리 통신망(LAN) 하에서 주소 결정 프로토콜(ARP) 메시지를 이용하여 상대방의 데이터 패킷을 중간에서 가로채는 맨 인 더 미들 공격 기법이다.

 

로컬 영역 네트워크에서 각 장비의 IP 주소와 MAC 주소간의 대응은 ARP 프로토콜을 통해 이루어진다. 이때 공격자가 의도적으로 특정 IP 주소와 자신의 MAC 주소로 대응하는 ARP 메시지를 발송하면, 그 메시지를 받은 장비는 IP 주소를 공격자 MAC 주소로 인식하게 되고, 해당 IP 주소로 보낼 패킷을 공격자로 전송하게 된다. 이 때 공격자는 그 패킷을 원하는 대로 변조한 다음 원래 목적지 MAC 주소로 발송하는 공격을 할 수도 있다.

흔히 사용되는 공격 방식은 게이트웨이 IP를 스푸핑하는 것으로, 이 경우 외부로 전송되는 모든 패킷이 공격자에 의해 가로채거나 변조될 수 있다. 또는, 두 노드에 각각 ARP 스푸핑을 하여 두 장비의 통신을 중간에서 조작하는 기법도 자주 사용된다.

 

 

[2007년 6월] ARP Spoofing의 습격, 그리고 방어 전략

http://www.ahnlab.com/kr/site/securitycenter/asec/asecView.do?groupCode=VNI001&webNewsInfoUnionVo.seq=10289

 

http://blog.tinywolf.com/156

이번에 학교 네트워크에 전체적으로 ARP 스푸핑 웜이 돌아다니고 있어 네트워크가 불안 불안하다..
역시나 연구실에서도 몇개가 발견되고..
웹브라우저를 사용하면 이상한 사이트로 거쳐서 돌아온다거나 하는 사태가 발생해서..

여러가지로 알아보고 대응책을 강구해보았다.

0. 기본적인 도구 사용법

- 관리자로 접속해서 도구 사용

여기에 나열된 모든 도구는 관리자 모드에서 사용해야 한다.
XP의 경우 관리자 계정으로 로그인하면 되며,
비스타의 경우 오른쪽 클릭해서 "관리자 권한으로 실행"을 누르면
관리자 모드로 실행된다.

- 윈도우 커맨드창 (명령 프롬프트) 실행하기
[윈도우(시작)]키를 누른채로 [R]키를 누르면 "실행" 입력창이 나오는데
여기에 'cmd'라고 입력하고 [엔터]하면 커맨드창이 실행된다.
비스타의 경우 그냥 [엔터]가 아니라
[Ctrl]+[Shift]+[Enter]로 실행해야 관리자 권한으로 실행된다.

1. ARP 스푸핑 공격의 개요

- ARP 테이블이란
인터넷 패킷은 IP를 기반으로 전송된다.
하지만 실제 네트워크 장비들이 데이터를 전송할 때는
IP보다는 MAC주소(하드웨어 주소)를 사용해서 전송하게 되는데
ARP 테이블에 적혀진 IP와 MAC 주소의 매핑을 보고
해당 IP주소에 해당하는 MAC 주소를 가진 장비로 데이터를 전달한다.

- ARP 정보 교환의 약점
그런데 이 ARP 정보를 보내는 장비가 정직한 장비인지 검사할 수 있는 방법이 없다.
그래서 악의를 가진 장비가 잘못된 ARP 정보를 네트워크에
지속적으로 뿌리면 네트워크는 일대 혼란이 오게 된다.

- 공격 방법
최초 감염은 웹브라우저나 USB 메모리 등을 통해서 감염되며
감염된 PC는 모든 IP패킷을 자신에게 오게하기 위해 게이트웨이로 가장하고
게이트웨이의 IP주소에 자신의 MAC주소를 매핑시켜 전파한다.

그렇게 되면 모든 패킷이 감염된 PC를 거치게 되므로
감염된 PC는 모든 데이터를 변조하고 웜바이러스를 삽입하여
네트워크 전체에 빠르게 확산된다.

웜바이러스의 제작자가 목적한 대로 여러 기능이 추가되면
다른 스파이웨어를 자동으로 다운로드 받게한다던지
방화벽이나 백신을 무력화하는 등 매우 다양한 피해를 입힌다.

2. 감염 사실 확인

- 기본적인 증상 확인
웹서핑이 심하다 싶을 정도로 갑자기 느려졌다.
서핑을 하다보면 실제로 자신의 페이지가 아님에도 특정 주소로 먼저 접속을 시도한다.
(예를 들어 분명 주소창에 news.naver.com을 쳤는데 twwen.com을 먼저 거친다던가 하는..)
허가하지 않은 이상한 파일을 자동으로 다운로드하려고 하거나
1.js, 2.js하는 식의 이상한 이름의 스크립트를 실행한다.

- 커맨드창에서 arp 명령 사용해서 확인하기
'arp -a'를 실행해서 현재 ARP 테이블을 확인할 수 있다.
Microsoft Windows [Version 5.2.3790] (C) Copyright 1985-2003 Microsoft Corp. C:\Documents and Settings\Administrator>arp -a Interface: 155.230.90.97 --- 0x2 Internet Address Physical Address Type 155.230.88.1 00-04-96-15-36-90 dynamic 155.230.88.5 00-04-96-20-b9-b9 dynamic C:\Documents and Settings\Administrator>
출력된 내용을 확인해보면 IP 주소, MAC 주소, 엔트리 종류의 목록으로 출력되고
엔트리 종류(Type)는 "동적(dynamic)"과 "정적(static)" 두가지 종류를 가진다.

그 중 동적 엔트리는 끊임없이 오고가는 arp 패킷에 의해 결정되는 것으로
ARP 스푸핑 공격을 당하게 되면 이 동적 엔트리가 사용되는 것보다 많이 화면에 표시되게 된다.
또 정상적인 장비와 감염된 장비가 서로 MAC 주소를 갱신하려 노력하기 때문에
MAC 주소가 주기적으로 끊임없이 바뀌는 현상도 발생한다.

즉, 위의 'arp -a' 명령을 지속적으로 실행시켜보면 감염되거나 공격 당한 PC에서
게이트웨이의 MAC 주소가 수시로 바뀜을 확인할 수 있다.
C:\Documents and Settings\Administrator>arp -a Interface: 155.230.90.97 --- 0x2 Internet Address Physical Address Type 155.230.88.1 00-04-96-15-36-90 dynamic 155.230.88.5 00-04-96-20-b9-b9 dynamic C:\Documents and Settings\Administrator>arp -a Interface: 155.230.90.97 --- 0x2 Internet Address Physical Address Type 155.230.88.1 00-04-96-15-36-90 dynamic 155.230.88.5 00-16-17-6a-f1-5a dynamic C:\Documents and Settings\Administrator>

- XArp, arpwatch 사용해서 확인하기
본 글에 첨부된 "XArp 1.5"를 사용하면 보다 쉽게 확인할 수 있다.
(리눅스에서는 gui arpwatch가 비슷한 역할을 한다.)
위와 같이 감염되거나 공격받는 PC에서는 몇초간격으로 게이트웨이의 MAC 주소가 변경된다.

- 네트워크 장비상에서 확인하기
각 네트워크 장비의 포트를 확인해 보면 몇몇 포트가 여러개의 IP를 가지고 있음을 확인할 수 있다.
정상적인 상황에서 2개 이상의 IP를 가진 MAC 주소가 있다면 반드시 의심해 봐야하며
게이트웨이나 중요서버들의 IP를 뿌리는 MAC 주소가 있다면 해당 포트의 연결을 끊고
해당 MAC 주소를 가진 장비를 확인해야한다.

3. 개인 PC상에서 공격에 대응하기

- 대응하는 방법
게이트웨이의 IP 주소와 MAC 주소를 정적으로 고정시키면 된다.
이를 위해서 우선 게이트웨이의 정상적인 MAC 주소를 알아야 한다.
네트워크 관리자를 통해서 확인하는 방법이 가장 정확한 방법이며
감염되지 않은 PC에서 'arp -a' 명령을 통해서 확인하는 방법도 괜찮다.

물론 MAC 주소 고정은 어디까지나 임시 방편으로..
확산 속도를 늦추는 것 뿐이고 결국 감염원을 찾아서 바이러스를 제거해야 한다.

- Windows XP
기존의 ARP 테이블을 청소하고 싶다면 커맨드창에서 아래와 같이 실행한다.
'arp -d [IP 주소]' (전체를 지우고 싶다면 그냥 'arp -d'만..)
실행하고 나면 ARP 테이블은 완전히 지워지게 된다. (확인은 'arp -a'로..)

이후에 게이트웨이의 엔트리를 정적으로 지정해서 수동으로 입력한다.
'arp -s {IP 주소} {MAC 주소}'
실행하고 나면 시간이 지나도 바뀌지 않는 ARP 엔트리를 확인할 수 있다.

아래는 실행한 예이다.
Microsoft Windows [Version 5.2.3790] (C) Copyright 1985-2003 Microsoft Corp. C:\Documents and Settings\Administrator>arp -a Interface: 155.230.90.97 --- 0x2 Internet Address Physical Address Type 155.230.88.5 00-16-17-6a-f1-5a dynamic 155.230.90.140 00-1a-4d-48-91-dc dynamic C:\Documents and Settings\Administrator>arp -s 155.230.88.5 00-04-96-20-b9-b9 C:\Documents and Settings\Administrator>arp -a Interface: 155.230.90.97 --- 0x2 Internet Address Physical Address Type 155.230.88.5 00-04-96-20-b9-b9 static 155.230.90.140 00-1a-4d-48-91-dc dynamic C:\Documents and Settings\Administrator>arp -d 155.230.90.140 C:\Documents and Settings\Administrator>arp -a Interface: 155.230.90.97 --- 0x2 Internet Address Physical Address Type 155.230.88.5 00-04-96-20-b9-b9 static C:\Documents and Settings\Administrator>
이렇게 정적으로 고정된 MAC 주소는 스푸핑 공격에도 변경되지 않게 된다.

- Windows Vista
비스타는 좀 더 까다로워졌다.
'arp -s' 명령이 동작하지 않기 때문에 다른 방법을 사용해야 한다.
아래는 넷쉘을 사용해서 MAC 주소를 고정시키는 방법을 사용한 예이다.
예에서 MAC 주소를 고정시키는 명령은 다음과 같다.
'set neighbors "{영역 이름}" "{IP 주소}" "{MAC 주소}"''
그외에 예에서 실행한 명령들을 확인해서 유사하게 사용하면 된다.
Microsoft Windows [Version 6.0.6000] (C) Copyright 1985-2005 Microsoft Corp. C:\Users\Administrator>netsh -c "interface ipv4" netsh interface ipv4>show addresses "로컬 영역 연결" 인터페이스에 대한 구성 DHCP 사용: No IP 주소: 155.230.90.140 서브넷 접두사: 155.230.88.0/22(마스크 255.255.252.0) 기본 게이트웨이: 155.230.88.5 게이트웨이 메트릭: 256 인터페이스 메트릭: 20 "Loopback Pseudo-Interface 1" 인터페이스에 대한 구성 DHCP 사용: No IP 주소: 127.0.0.1 서브넷 접두사: 127.0.0.0/8(마스크 255.0.0.0) 인터페이스 메트릭: 50 netsh interface ipv4>set neighbors "로컬 영역 연결" "155.230.88.5" "00-04-96-20-b9-b9" netsh interface ipv4>exit C:\Users\Administrator>arp -a 인터페이스: 155.230.90.140 --- 0x8 인터넷 주소 물리적 주소 유형 155.230.88.5 00-04-96-20-b9-b9 정적 155.230.90.88 00-a0-b0-1b-5f-db 동적 C:\Users\Administrator>

- Ubuntu Linux
우분투도 윈도우XP와 유사하다.. 대신 관리자 권한을 위해 'sudo' 명령을 같이 사용한다.
'arp -a'
'sudo arp -d ...'
'sudo arp -s ...'


4. 네트워크 관리자의 대응

- 감염원 파악

가장 중요한 것이 주 감염원을 파악하는 것이다.
ARP 스푸핑이 처음 발견되면 빠른 시간 내에 MAC 주소를 모니터링해서 주 감염원을 찾고
선을 뽑아서 네트워크에서 제거한다.
2장의 마지막 절에 언급된 대로 터널이나 기타 복잡한 기능의 장비가 아닌 일반 장비(PC 등)가
하나의 MAC 주소에 두개 이상의 IP를 가지고 있다면 해당 MAC 주소의 장비를 검사해야한다.
(게이트웨이의 IP를 가지려는 MAC 주소의 장비를 필히 확인한다.)

- 모든 하위 네트워크 상의 PC를 치료
그리고 모든 PC에 대해 최신 버전의 백신으로 치료를 수행하고
주 감염 PC는 자료를 백업한 후 새로 설치하도록 권고한다.

- 장비 재정비
동시에 네트워크에서 어지럽게 꼬인 ARP를 정리하기 위해
자동 혹은 수동으로 장비들을 리셋한다.
대규모 네트워크의 경우 복구에 훨씬 많은 시간이 소요된다.
게이트웨이 장비에 아예 수동으로 ARP 테이블을 구성하고 IP나 장비가 바뀔 때마다
직접 등록하면서 네트워크가 안정되기를 기다리는 것도 좋은 방법이다.



A. 여담

- 비상사태는 비상사태고 퇴근시간은 퇴근시간?

이번에 교내 전체에 ARP 스푸핑 웜이 확산되면서 학교의 전산센터는 비상체제에 돌입했다.
이전엔 잘되던 IP 변경도 일일히 신청해서 바꿔야하고.. 몇몇 PC는 인터넷이 안되고..
특히 우리 연구실은 공교롭게도 같은 날 네트워크 장비를 기가비트로 교체하는 작업을 하고
대다수의 PC들이 IP를 바꾼 상태라 그야말로 패닉이었다.
그래서 바쁘게 전산센터와 연락하면서 이런 저런 일들을 겪었는데..

나: '그래서 빨리 변경해주셨으면 합니다.'
콜센터: "지금이 비상사태라 당장 해드리기 어렵습니다."
(직접 찾아가서 자료를 전달한 후)
나: '그럼 언제쯤 가능 할까요?'
콜센터: "곧 퇴근 시간이라 내일해야할 것같은데요.."
나: '응?'

비상사태라면서 정시퇴근을?!?!

 

 

 

해커는 다음 파라미터를 수정해 또다른 포트로 서비스 가능하다

 

 

Thank you for your post here.

Did you install the security updateKB951746 (MS08-037) on the Windows Server 2003 server?

If yes, please check how it works if you create portreservation for PPTP.

1. On the server, locate the following registry keys in Regiedit:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\ReservedPorts

2. Add 1723-1723 to reserve the port needed forPPTP

3. Reboot the server to check how it works.

Some Services May Fail to Start or May Not Work Properly After Installing MS08-037 (951746 and 951748)

http://blogs.technet.com/sbs/archive/2008/07/17/some-services-may-fail-to-start-or-may-not-work-properly-after-installing-ms08-037-951746-and-951748.aspx

If you have any questions or concerns, please do not hesitate to let me know.

Posted by 보미아빠
, |

http://cafe.naver.com/sqlmvp/3487

 

dbcc freeproccache
go

drop table tblx
go

create table tblx
(idx int
,a int
,b int)
go

create clustered index nc_tblx_01 on tblx (idx)
create nonclustered index nc_tblx_02 on tblx (a)

--dbcc show_statistics (tblx, nc_tblx_01)
--dbcc show_statistics (tblx, nc_tblx_02)

if OBJECT_ID ('usp_cluster') is null
exec ('create proc usp_cluster as select 1 ')
go
if OBJECT_ID ('usp_covered') is null
exec ('create proc usp_covered as select 1 ')
go
if OBJECT_ID ('usp_none_covered') is null
exec ('create proc usp_none_covered as select 1 ')
go

alter proc usp_cluster
@a int
as
select * from tblx where idx = @a
go

alter proc usp_covered
@a int
as
select a from tblx where a = @a
go

alter proc usp_none_covered
@a int
as
select * from tblx where a = @a
go

set nocount on
declare @init int = 0
while (@init < 10000) begin
insert into tblx values (1,@init,1)
set @init += 1
end
go

exec dbo.usp_cluster 1
go 10
exec dbo.usp_covered 1
go 10
exec dbo.usp_none_covered 1
go 10

select refcounts, usecounts, plan_generation_num, text, *
from sys.dm_exec_query_stats a
cross apply sys.dm_exec_sql_text (a.sql_handle) b
left outer join sys.dm_exec_cached_plans c
on a.plan_handle = c.plan_handle
where text like '%tblx%'
and text not like '%sys.dm%'
and text not like '%insert%'
go

set nocount on
declare @init int = 0
while (@init < 10000) begin
insert into tblx values (1,@init,1)
set @init += 1
end
go

-- 여기서 부터 프로파일링 잡을것

exec dbo.usp_cluster 1
go
exec dbo.usp_covered 1
go
exec dbo.usp_none_covered 1
go

select refcounts, usecounts, plan_generation_num, text, *
from sys.dm_exec_query_stats a
cross apply sys.dm_exec_sql_text (a.sql_handle) b
left outer join sys.dm_exec_cached_plans c
on a.plan_handle = c.plan_handle
where text like '%tblx%'
and text not like '%sys.dm%'
and text not like '%insert%'
go

프로시저가 플랜을 재컴파일이 일어남을 잡는 방법 및 재컴파일시 결과

clustered index 만 재컴파일 일어나도록 했고, 나머지는 돌리지 않은 결과 입니다.

 

 

 

Posted by 보미아빠
, |

최근에 달린 댓글

최근에 받은 트랙백

글 보관함