분류 전체보기

    2022-01-09 Sun

    Created: January 9, 2022 9:22 PM 1. CVE-2021-44024 Reference: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-44024 Trend Micro Apex One(On-premise와 클라우드 기반 소프트웨어(SaaS)) 및 Micro Worry-Free Business Security (10.0 SP1 and Services)에서 확인되었으며 로컬에서 공격자가 SYSTEM 권한으로 악의적인 파일 쓰기가 가능한 취약점이다. 취약점을 악용하기 위해서 공격자는 대상 시스템에서 low-privileged 코드 실행이 가능해야한다. 2. Google Docs의 주석 기능을 활용한 새로운 피싱 공격 Reference:..

    2022-01-07 Fri

    1. 새로운 랜섬웨어 Night Sky 등장 Reference: https://www.boannews.com/media/view.asp?idx=103972&page=1&mkind=1&kind= 12월 27일 처음 발견되었으며, 기업의 네트워크에 침투해 데이터를 유출하고 암호화한다. 먼저 데이터를 빼돌린 후, 돈을 지불하지 않으면 암호화 하는 전형적인 방식을 사용하고 있다. .dll 또는 .exe 파일 확장자를 제외한 모든 파일을 암호화하며, 아래 파일이나 폴더는 암호화 하지 않는다. AppData Boot Windows Windows.old Tor Browser Internet Explorer Google Opera Opera Software Mozilla Mozilla Firefox $Recycle.B..

    2021-01-05 Wed

    1. iOS HomeKit의 ‘doorLock’ 버그로 DoS 취약점 발생 Reference: https://thehackernews.com/2022/01/researchers-detail-new-homekit-doorlock.html Apple Home 호환 기기에서, HomeKit 기기의 이름을 500,000자보다 큰 문자열로 변경하면 DoS 취약점(crash, 무한 재부팅)이 발생한다. 해당 취약점은 최신 버전 15.2에서도 영향을 미치며, 14.0부터 모든 버전에 존재할 가능성이 높다. 현재 패치는 되지 않았다. 2. 악성 텔레그램 설치 프로그램을 통해 배포되는 Purple Fox 악성코드 발견 Reference: https://www.bleepingcomputer.com/news/security..

    2022-01-04 Tue

    1. Microsoft releases emergency fix for Exchange year 2022 bug Reference: https://www.bleepingcomputer.com/news/microsoft/microsoft-releases-emergency-fix-for-exchange-year-2022-bug/ 날짜 형식을 YYMMDDHHMM 으로 저장 후 정수형으로 바로 변환하여 integer overflow가 발생하는 버그이다. signed int(4byte)의 경우 최대값이 2147483647이다. 2201010101 (2022년 1월 1일 1시 1분)를 정수로 본다면 signed int의 최대값보다 커져서 integer overflow가 발생하며, 마이크로소프트 익스체인지 서버에서도..

    2021-01-03 Mon

    1. CVE-2021-45960 Reference: https://github.com/libexpat/libexpat/issues/531 libexpat은 C로 작성된 XML parser이다. lib/xmlparse.c/storeAtts 함수의 취약점이며 조작된 XML 파일을 input으로 했을 때 발생한다. 29bit 이상의 값에서 left shfit를 할 경우 너무 작은 크기를 할당하거나, 메모리를 free 시키는 등의 의도하지 않은 작업을 수행하게 된다. 31bit보다 큰 값에서 signed int에 대한 left shift( allocating too few bytes | => mallocs okay or returns NULL | | m_nsAttsPower 30 | (size_t)(1 25_7..

    2021-01-02 Sun

    Created: January 2, 2022 12:53 PM 1. QT UP TO 6.2.1 QT SVG GROWAPPEND OUT-OF-BOUNDS WRITE Reference: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=37025 https://vuldb.com/?id.189526 https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-45930 Patch: https://github.com/qt/qtsvg/commit/36cfd9efb9b22b891adee9c48d30202289cfa620 https://github.com/qt/qtsvg/commit/36cfd9efb9b22b891adee9c48d30..

    PE Structure - EAT

    0. EAT Export Address Table 이건 exe 가 아니라 dll이나 lib 구조 안에(라이브러리들)서 확인할 수 있는 구조라고 생각하면 되는 것 같다. EAT는 라이브러리 파일에서 제공하는 함수를 다른 프로그램에서 사용할 수 있도록 익스포트하는 함수의 시작 주소를 구할 수 있게 해준다. 음.. 그래서 dll은 자신의 함수를 다른 프로그램들에서 가져다 쓸 수 있게 해주는 라이브러리이기 때문에 첫 문장처럼 얘기를 써봤다 그래서 IAT는 한 exe가 여러 라이브러리에서 함수를 가져다 쓸 수 있기 때문에 구조체 배열의 형태를 가지지만(자기가 임포트 하는 라이브러리 개수만큼?) EAT는 한개의 구조체 배열로 이루어져 있다. 다음 제목에서 설명해야징 아무튼 큰 틀에서 보면 IAT와 큰 차이는 없는 ..

    PE Structure - IAT

    적고보니 이해가 좀 되는 것 같다.. 결론은 IMAGE_NT_HEADERS의 필드였던 OptionalHeader의 필드인 DataDirectory 배열의 첫번째 DataDirectory[1]이고, 이게 가리키는게 IMAGE_IMPORT_DESCRIPTOR의 배열인것이다. 그리고 IMAGE_IMPROT_DESCRIPTOR의 INT를 보고 실제 함수의 주소를 찾아서 IAT에 쓰는 과정이 dll의 주소를 메모리에 올리는 과정이다. 0. IAT 0-0 설명 Import Address Table IAT를 이해하기 위한 사전 지식.. 32bit Windows 환경으로 넘어오면서 메모리나 디스크 등의 자원 활용의 낭비를 막기 위해 DLL이 생겨났다. DOS 시절의 프로그램들은 특정 함수를 사용하기 위해 해당 라이브러..