컴퓨터 시스템을 해킹하는 방법

Posted on
작가: Laura McKinney
창조 날짜: 4 4 월 2021
업데이트 날짜: 15 할 수있다 2024
Anonim
CMD로 해킹하는 7가지 방법
동영상: CMD로 해킹하는 7가지 방법

콘텐츠

이 기사 : 시작하기 전에 수행 할 작업 시스템 소개

"좋은 옛날"컴퓨팅에서 해킹은 인터넷에서 사용 된 시스템 및 기술에 대한 정보를 얻기 위해 사용되었습니다. 최근에는 해커라는 용어로 인해 해킹이라는 용어가 더 부정적인 의미를 내포했습니다. 반면 오늘날 많은 회사는 이전 해커를 사용하여 자체 시스템을 테스트하고 장단점을 발견하고 있습니다. 이 이전의 해적들은 이제 법적인 한계를 초과하지 않아야한다는 것을 알고 존중하는 "해커"가되었으며, 고용주에게 영감을 주어 높은 임금을받을 수있게되었습니다. 해커의 세계로 뛰어 들어이 기술을 배우기 위해 준비가되었다고 생각되면, 조금 시간을내어 문제에 대해 교육하십시오.


단계

1 부 시작하기 전에해야 할 일



  1. 프로그래밍 언어를 배우십시오. 특정 언어로 자신을 제한 할 필요는 없으며 여기에 대한 몇 가지 팁이 있습니다.
    • C 언어는 UNIX 운영 체제가 생성 된 강력한 빌드 언어입니다. 이 언어는 어셈블러 언어와 함께 컴퓨터의 메모리 작동 방식에 중요한 것을 가르쳐 줄 것입니다.
    • 다양한 작업의 자동화에 사용할 수있는 고급 인터프리터 인 Python 또는 Ruby 언어.
    • 펄 언어도이 분야에서 합리적인 선택입니다. PHP 언어는 웹에서 실행되는 대부분의 데이터베이스 응용 프로그램에서 사용되기 때문에 흥미로울 것입니다.
    • BASH 스크립트에 대한 지식도 필수적입니다. UNIX / LINUX 운영 체제의 동작을 쉽게 조작 할 수 있기 때문입니다. 이 유형의 프로그래밍은 대부분의 작업을 수행하는 스크립트 파일 작성으로 구성됩니다.
    • 손끝에서 어셈블러 언어를 알아야합니다. 이것은 기계 프로세서의 "낮은 수준"언어입니다. 여러 가지 변형이 있습니다 (마이크로 프로세서 제품군 당 하나씩). 마지막으로 실행 된 모든 프로그램은 어셈블러 명령어로 변환됩니다. 어셈블러를 모르면 프로그램을 실제로 수정할 수 없습니다.


  2. 대상 시스템을 정확히 알고 있어야합니다. 이 시스템의 하드웨어 및 소프트웨어 구성 요소에 대한 정보를 얻는 것을 "열거"라고합니다. 당신이 당신의 목표에 대해 더 많이 알수록, 당신은 나중에 가질 놀람이 줄어 듭니다.

Part 2 시스템에 도입




  1. Unix / Linux 터미널을 사용하여 명령을 입력하십시오. Windows에서 작업하는 경우 Cygwin이 Unix / Linux 터미널을 에뮬레이트하도록 도와줍니다. Nmap 프로그램은 특히 WinPCap을 사용하며 Windows에서 CygWin을 실행할 필요가 없습니다. 그러나 Nmap에는 Windows 시스템이 부족하기 때문에 Windows 시스템에서 제대로 작동하지 않습니다. 소켓 기본. 더 많은 보안, 유연성 및 안정성을 제공하는 Linux 또는 BSD 시스템도 사용해야합니다. 대부분의 Linux 배포판에는 많은 유용한 도구가 사전 설치되어 있습니다.
    • 최근 Windows 10 Fall Creators Update가 업데이트되었으므로 Windows Store에서 Linux Linux 터미널을 찾아 Windows Linux Subsystem을 통해 Linux 명령을 에뮬레이트 할 수 있습니다.


  2. 기계를 먼저 고정하십시오. 자신을 보호하기 위해 일반적으로 사용되는 기술을 이해해야합니다. 기본 사항부터 시작하십시오. 건강에 해롭거나 불법적 인 활동을 제공하는 사이트를 호스팅하는 서버를 찾았습니까? 당신이 사용할 수있는 수단으로 해킹을 시도하십시오. 수정하지 말고이 사이트 만 사용하십시오.


  3. 대상 시스템의 활동을 테스트하십시오. 원격 시스템에 접근 할 수 있습니까? Ping 유틸리티 (대부분의 운영 체제에 포함되어 있음)를 사용하여 대상의 활동 상태를 확인할 수있는 한, 작업이 ICMP 프로토콜에 의존하기 때문에 항상 결과에 의존 할 수있는 것은 아닙니다. 일부 편집증 시스템 관리자가 차단했습니다.



  4. 사용 된 운영 체제 (OS)를 결정하십시오. 유틸리티를 사용하여 시작 및 종료 포트 스캔 POF 또는 nmap은 열린 포트, 사용 된 원격 운영 체제에 대한 보고서를 제공하고 사용중인 방화벽 또는 라우터 유형에 대한 정보를 제공하여 작업 과정을 계획 할 수 있습니다. 와 nmap은 명령 행에서 "-O"스위치를 설정하여 사용되는 원격 운영 체제 유형을 감지 할 수 있습니다.


  5. 원격 시스템에서 열린 경로 또는 포트를 찾으십시오. FTP (포트 21) 또는 HTTP (포트 80)와 같은 가장 일반적인 포트는 종종 가장 잘 보호되며 아직 발견되지 않은 공격 수단에 취약 할 수 있습니다.
    • Telnet 또는 LAN 사용을 위해 열려있는 다른 UDP 포트와 같이 잊어 버린 다른 TCP 및 UDP 포트를 사용해보십시오.
    • 열린 포트 22는 일반적으로 때때로 손상 될 수있는 대상에서 실행중인 SSH (Secure Shell) 서비스의 증거를 나타냅니다.


  6. 비밀번호 또는 인증 절차를 해독하십시오. 강제 실행을 포함하여 암호를 해독하는 방법에는 여러 가지가 있습니다. 암호는 강제 소프트웨어의 사전 정의 된 사전에 포함 된 각각의 가능한 조합을 시도하는 것입니다.
    • 사용자는 종종 복잡한 암호를 사용하여 가능한 한 많은 시간이 걸리도록 강제하는 것이 좋습니다. 그러나 소프트웨어 강제 기술은 속도와 효율성면에서 지속적으로 향상됩니다.
    • 대부분의 해싱 알고리즘은 약하며 이러한 약점을 악용하여 크래킹 속도를 크게 높일 수 있습니다 (MD5 계산 알고리즘을 25 % 줄일 수 있으므로 상당히 가속화하는 효과가 있습니다). ).
    • 최신 기술은 그래픽 카드 프로세서를 보조 프로세서로 사용하여 암호 강제 속도를 크게 향상시킵니다.
    • 당신은 테이블을 사용하려고 할 수 있습니다 무지개 가능한 빨리 균열을 만들 수 있습니다. 그러나 암호 해독은 해시를 알고있는 경우에만 유효합니다.
    • 원격 시스템에 로그인하여 가능한 모든 비밀번호를 시도하지 마십시오. 시스템 보고서를 오염시키고 침입 탐지 시스템에 의해 발견 될 수 있으며 도달하는 데 몇 년이 걸릴 수 있습니다.
    • 루팅 된 태블릿을 사용하고 TCP 스캐너를 설치할 수 있습니다. IP 주소가 열릴 때 프록시에 비밀번호가 표시되는 것을 볼 수 있습니다.
    • 암호를 해독하는 것보다 시스템을 침투하는 다른 방법을 찾는 것이 더 쉬운 경우가 많습니다.


  7. 권한 수준을 얻으십시오 수퍼 유저. Unix / Linux 시스템을 대상으로하는 경우 "루트"권한을, Windows 시스템을 사용중인 경우 관리자 권한을 얻으십시오.
    • 중요한 관심 정보는 대부분 보호되며이를 얻기 위해서는 어느 정도의 인증이 필요합니다. 컴퓨터의 모든 파일을 보려면 Linux 및 BSD 운영 체제의 "루트"사용자 레벨에 해당하는 사용자 계정 인 "슈퍼 사용자"권한 레벨이 필요합니다.
    • 이것은 종종 라우터의 기본 "관리자"계정입니다 (이전에 변경되지 않은 경우). Windows 시스템에서 이는 "관리자"계정입니다.
    • 연결에 액세스한다고해서 전체 시스템에 액세스 할 수있는 것은 아닙니다. 운영 체제에 따라 사용자 수준이 "루트"인 관리자 계정 인 슈퍼 사용자 만 전체 시스템에 액세스 할 수 있습니다.


  8. 다양한 전술을 사용하십시오. 종종 수퍼 유저 상태를 얻으려면 "버퍼 오버 플로우 오버플로"를 유발하는 것과 같은 전술에 의존해야합니다.이 경우 버퍼 비우기 (메모리 덤프)를 비우는 효과가 있으므로 주입 할 수 있습니다. 일반적으로 허용되는 것보다 높은 수준에서 코드를 작성하거나 작업을 수행합니다.
    • 이것은 버그가있는 프로그램의 "SetUid"비트가 설정되면 Unix 계열 시스템에서 발생하며이 프로그램은 마치 다른 사용자 (슈퍼 유저) 인 것처럼 실행됩니다. 예를 들어).
    • 대상 컴퓨터에서 보안되지 않은 프로그램 실행 파일을 쓰거나 찾는 것만으로도 그렇게 할 수 있습니다.


  9. 숨겨진 백도어 액세스를 만듭니다. 일단 제어권을 얻은 후에는이 시스템으로 다시 돌아올 가능성을 확인해야합니다. 이를 위해 SSH 서버와 같은 대상 시스템의 중요한 서비스를이 목적으로 수정하면됩니다. 그러나 다음에 대상 시스템을 업그레이드하는 동안이 리턴 액세스가 지워질 수 있습니다. 실제로 숙련 된 해커는 컴파일러 (또는 정확히 하나의 라이브러리 중 하나)를 수정하여 업그레이드 한 각 프로그램이 대상 시스템에서 잠재적 인 백도어 액세스가되도록합니다.


  10. 트랙을 지 웁니다. 관리자가 자신의 시스템이 침입했음을 알 수 없도록하십시오. 웹 사이트를 수정하지 말고 (이 경우) 필요한 것보다 많은 파일을 만들지 마십시오. 시스템에 사용자를 추가하지 마십시오. 가능한 빨리 행동하십시오. SSHD와 같은 서버를 패치해야하는 경우, 누군가이 비밀번호를 사용하여 로그인하려고하면 서버가 액세스 할 수는 있지만 전달할 수 없도록 비밀번호가 통합되어 있는지 확인하십시오. 중요한 정보가 없습니다.