'경로 및 정보'에 해당되는 글 192건

https://blog.alyac.co.kr/3971

 

WordPress 다운로드 관리자 플러그인의 취약점(CVE-2021-34639) 주의!

공격자가 특정 구성에서 임의의 코드를 실행할 수 있도록 하는 WordPress 다운로드 관리자 플러그인에 영향을 미치는 취약점이 발견되었습니다. 이 취약점으로 인해 작성자 및 uploa

blog.alyac.co.kr

https://www.boho.or.kr/krcert/secNoticeView.do?bulletin_writing_sequence=36292 

 

KISA 인터넷 보호나라&KrCERT

KISA 인터넷 보호나라&KrCERT

www.boho.or.kr

https://isarc.tachyonlab.com/4898

 

WordPress 플러그인 취약점 발견

20,000개 이상의 WordPress 사이트에 설치된 플러그인에서 크로스 사이트 스크립트 취약점이 발견되었다. 이는 WP HTML Mail 플러그인의 취약점으로, WP HTML Mail WordPress 이메일 템플릿 디자이너 플러그인

isarc.tachyonlab.com

 

 

'경로 및 정보' 카테고리의 다른 글

[Ethereum] Smart Contract 보안 취약점 가이드  (0) 2022.05.11
URL 경로 확인  (0) 2022.05.03
ipv4 대신 경로 참고  (0) 2022.04.30
서브넷 마스크 계산 경로  (0) 2022.04.29
PE Viewer  (0) 2022.04.27
블로그 이미지

wtdsoul

,

https://www.sitelike.org/similar/robtex.com/

 

 

IPv4Info - All data for ipv4 network blocks and autonomous systems

 

 

'경로 및 정보' 카테고리의 다른 글

URL 경로 확인  (0) 2022.05.03
Wordpress 추가  (0) 2022.05.02
서브넷 마스크 계산 경로  (0) 2022.04.29
PE Viewer  (0) 2022.04.27
Web Directory Fuzz  (0) 2022.04.25
블로그 이미지

wtdsoul

,

http://www.ip-calc.com/

 

IP Calc - VLSM

Maximum Subnets 2147483648 1073741824 536870912 268435456 134217728 67108864 33554432 16777216 8388608 4194304 2097152 1048576 524288 262144 131072 65536 32768 16384 8192 4096 2048 1024 512 256 128 64 32 16 8 4 2 1 Maximum Addresses 2147483646 1073741822 5

www.ip-calc.com

 

 

'경로 및 정보' 카테고리의 다른 글

Wordpress 추가  (0) 2022.05.02
ipv4 대신 경로 참고  (0) 2022.04.30
PE Viewer  (0) 2022.04.27
Web Directory Fuzz  (0) 2022.04.25
Tomcat 에러 정보 제거  (0) 2022.03.23
블로그 이미지

wtdsoul

,

PE Viewer

경로 및 정보 2022. 4. 27. 10:31

https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=kiros33&logNo=130189860671

 

[Windows][Development] NikPEViewer - PE 정보를 보여주는 포터블 프로그램

Home Page http://codedebug.com/ Product Page http://www.codedebug.com/php/Products/Products_N...

blog.naver.com

 

https://idlecomputer.tistory.com/182

 

[reversing] EAT(Export Address Table) (기타 = 세션 찾기 64bit pe viwer)

EAT (Export Address Table) Windows 운영체제에서 라이브러리(Library) 란 다른 프로그램에서 불러 쓸 수 있도록 관련 함수들을 모아놓은 파일(DLL/SYS)입니다. Win32 API 가 대표적인 Library 이며, 그 중에서..

idlecomputer.tistory.com

 

https://www.safer-networking.org/products/filealyzer/

 

FileAlyzer - Spybot Anti-Malware and Antivirus

Safer-Networking offers a comprehensive set of tools. This one helps you to understand more of your data files.

www.safer-networking.org

 

 

'경로 및 정보' 카테고리의 다른 글

ipv4 대신 경로 참고  (0) 2022.04.30
서브넷 마스크 계산 경로  (0) 2022.04.29
Web Directory Fuzz  (0) 2022.04.25
Tomcat 에러 정보 제거  (0) 2022.03.23
bug bounty epub  (0) 2022.03.18
블로그 이미지

wtdsoul

,

https://www.golinuxcloud.com/fuzzing-tools-for-web-application-pentesting/

 

Top 5 Fuzzing Tools for Web Application Pentesting  | GoLinuxCloud

In this tutorial we explore top 5 fuzzing tools used for application web testing with installation steps and usage.

www.golinuxcloud.com

 

 

 

'경로 및 정보' 카테고리의 다른 글

서브넷 마스크 계산 경로  (0) 2022.04.29
PE Viewer  (0) 2022.04.27
Tomcat 에러 정보 제거  (0) 2022.03.23
bug bounty epub  (0) 2022.03.18
Pyinstaller Decom  (0) 2022.01.29
블로그 이미지

wtdsoul

,

https://horae.tistory.com/entry/TOMCAT-%EC%97%90%EB%9F%AC-%EC%A0%95%EB%B3%B4-%EC%A0%9C%EA%B1%B0%ED%95%98%EA%B8%B0

 

TOMCAT 에러 정보 제거하기

출처: http://linux.systemv.pe.kr/tomcat-%EC%97%90%EB%9F%AC-%EC%A0%95%EB%B3%B4-%EC%88%A8%EA%B8%B0%EA%B8%B0/ Java 애플리케이션을 작성할때에 에러 발생시 보여줄 에러 페이지를 설정할 수 있습니다. 웹 애..

horae.tistory.com

 

 

'경로 및 정보' 카테고리의 다른 글

PE Viewer  (0) 2022.04.27
Web Directory Fuzz  (0) 2022.04.25
bug bounty epub  (0) 2022.03.18
Pyinstaller Decom  (0) 2022.01.29
Netsparker LDAP 인젝션  (0) 2022.01.20
블로그 이미지

wtdsoul

,

bug bounty epub

경로 및 정보 2022. 3. 18. 13:11

 

https://github.com/skilincer/CyberSource

 

GitHub - skilincer/CyberSource

Contribute to skilincer/CyberSource development by creating an account on GitHub.

github.com

https://github.com/PritamKundu/Bug-Bounty---Important-Books

 

'경로 및 정보' 카테고리의 다른 글

Web Directory Fuzz  (0) 2022.04.25
Tomcat 에러 정보 제거  (0) 2022.03.23
Pyinstaller Decom  (0) 2022.01.29
Netsparker LDAP 인젝션  (0) 2022.01.20
WinDbg 6.12 버전  (0) 2022.01.20
블로그 이미지

wtdsoul

,

https://blog.system32.kr/286

 

[Python] Pyinstaller Decompile (암호화되어 있는 바이너리 디컴파일)

오늘은 Pyinstaller를 통해서 암호화된 바이너리 디컴파일을 해보도록하겠습니다. 먼저 아래 사진은 그냥 심심해서 만들어 놓은 트위터 자동 글쓰기 프로그램입니다. 하지만 Pyinstaller을 통해서 암

blog.system32.kr

 

오늘은 Pyinstaller를 통해서 암호화된 바이너리 디컴파일을 해보도록하겠습니다.

먼저 아래 사진은 그냥 심심해서 만들어 놓은 트위터 자동 글쓰기 프로그램입니다.

하지만 Pyinstaller을 통해서 암호화 키를 탑재해서 컴파일을 했었지만, 암호가 기억이 안나 리버싱(?)을 통해서 디컴파일을 성공했습니다.

먼저 파일을 분해하기 위해서 pyinstallerextractor 을 사용하도록 하겠습니다. 다운로드 링크는 아래와 같습니다.

https://sourceforge.net/projects/pyinstallerextractor/

 

PyInstaller Extractor

Download PyInstaller Extractor for free. Extract contents of a Windows executable file created by pyinstaller. MIGRATED TO GITHUB https://github.com/extremecoders-re/pyinstxtractor This is a python script to extract the contents of a PyInstaller generated

sourceforge.net

먼저 해당 파일과 다운받은 Pyinstaller Extractor을 한 폴더에 집어 넣고, 다음과 같이 커맨드라인을 수행합니다.

python pyinstxtractor.py twitter.exe

실행한 결과 파일에 암호화가 되어 있다는 메시지와 함께 추출에 실패 했다는 메시지를 발견 할 수 있습니다.

 
[!] Error: Failed to decompress OpenSSL, probably encrypted. Extracting as is.
 
[!] Error: Failed to decompress OpenSSL.SSL, probably encrypted. Extracting as is.
 
[!] Error: Failed to decompress OpenSSL._util, probably encrypted. Extracting as is.
 
[!] Error: Failed to decompress OpenSSL.crypto, probably encrypted. Extracting as is.
 
[!] Error: Failed to decompress OpenSSL.version, probably encrypted. Extracting as is.
 
[!] Error: Failed to decompress PyQt5, probably encrypted. Extracting as is.
 
[!] Error: Failed to decompress PyQt5.uic, probably encrypted. Extracting as is.
 
[!] Error: Failed to decompress PyQt5.uic.Compiler, probably encrypted. Extracting as is.
 
[!] Error: Failed to decompress PyQt5.uic.Compiler.compiler, probably encrypted. Extracting as is.

해당 파일에 암호화가 되어 있는것은 기정 사실이고, 이 암호화를 우회하기 위해서는 몇가지 작업이 필요합니다.

커맨드 라인을 실행하면 다음과 같이 폴더 하나가 생성됩니다.

이 폴더내에는 제가 사용했던 함수들과 외부 모듈등이 함께 존재하며, 암호화 키를 입력하지 않았기 때문에 정상적으로 추출이 되지 않았습니다.

암호화 키를 찾기 위해서 검색과 삽질을 한 결과 암호화 키가 특정 부분에 저장된다는 사실을 알게 되었습니다.

다음과 같이 pyimod00_crypto_key 파일을 찾아줍니다.

HxD 프로그램을 통해서 열어보면 다음과 같이 암호화 키를 발견할 수 있습니다.

해당 키가 항상 저자리에 있는가에 대한 의문을 가졌고, 여러 파일을 만들어 테스트 해본결과 4E 29( N) ) 전 16자리는 항상 암호화 키를 나타내고 있습니다.

해당 키를 바탕으로 다시 디컴파일을 진행합니다. 디컴파일을 진행하기 위해서 다음과 같이 커맨드 라인을 작성합니다.

python pyinstxtractor.py twitter.exe --key=1q2w3e4r5t6y7u8i

동일하게 폴더를 들어가 보면, 바이너리 파일을 확인할 수 있습니다.

현재 twitter 파일은 pyc파일로 존재합니다. 약간의 수정을 더해줍니다.

42 0D 0D 0A 01 00 00 00 00 00 00 00 00 00 00 00

해당 hex값들을 twitter 파일 헤더에 넣습니다. (수정이 아닌 덧붙이기.)

그후 파일 확장자를 pyc를 붙여줍니다.

이제 남은건 디컴파일밖에 남지 않았습니다.

https://github.com/rocky/python-decompile3

 

GitHub - rocky/python-decompile3: Python decompiler for 3.7-3.8 Stripped down from uncompyle6 so we can refactor and start to fi

Python decompiler for 3.7-3.8 Stripped down from uncompyle6 so we can refactor and start to fix up some long-standing problems - GitHub - rocky/python-decompile3: Python decompiler for 3.7-3.8 Stri...

github.com

rocky님의 python-decompile3 도구를 받습니다. 설치까지 슥삭 해주고.

decompyle3 twitter.pyc > test.py

다음과 같이 실행을 해주면 py 코드로 반환된 결과를 확인할 수 있습니다.

난독화가 되어 나오는 이유는 제가 난독화해서 컴파일 했기 때문입니다.

 

긴글 읽어주셔서 감사합니다!

문의나 오탈자 등은 pental@kakao.com 또는 아래 댓글을 통해서 남겨주시면 감사하겠습니다.



출처: https://blog.system32.kr/286 [Pental - Forensics Story]

'경로 및 정보' 카테고리의 다른 글

Tomcat 에러 정보 제거  (0) 2022.03.23
bug bounty epub  (0) 2022.03.18
Netsparker LDAP 인젝션  (0) 2022.01.20
WinDbg 6.12 버전  (0) 2022.01.20
Sonarqube 소스 분석 및 owasp top 10 점검  (0) 2022.01.19
블로그 이미지

wtdsoul

,

https://www.netsparker.com/blog/web-security/ldap-injection-how-to-prevent/

 

What is LDAP Injection and How to Prevent It

LDAP injection attacks exploit input validation vulnerabilities to inject and execute queries to Lightweight Directory Access Protocol servers. This article looks at how LDAP injection works and shows how it can be prevented to improve web application secu

www.netsparker.com

 

LDAP injection attacks exploit input validation vulnerabilities to inject and execute queries to Lightweight Directory Access Protocol servers. By supplying specially constructed user inputs to a vulnerable application, attackers can extract potentially sensitive information from an organization’s LDAP directory. LDAP services are crucial for the daily operation of many organizations, and a successful LDAP injection attack can provide valuable information for further attacks on systems and applications. In this article, we will look at how LDAP injection works and see how it can be prevented to improve web application security.

 

The Importance of LDAP Servers

The Lightweight Directory Access Protocol, or LDAP, is an open application protocol for accessing and maintaining directory services in an IP network (see RFC 4511 for the specification). Organizations typically store information about users and resources in a central directory (such as Active Directory), and applications can access and manipulate this information using LDAP statements. In effect, LDAP servers are a gateway to a wealth of sensitive information, including user credentials, staff names and roles, shared network resources device and so on. Although less publicized than SQL injection attacks, LDAP injection attacks can yield valuable information about an organization’s internal infrastructure and potentially even provide attackers with access to database servers and other internal systems.

LDAP Statement Syntax

Clients can query an LDAP server by sending requests for directory entries that match specific filters. If entries are found that match the LDAP search filter, the server returns the requested information. Search filters used in LDAP queries follow the syntax specified in RFC 4515 (originally RFC 2254). Filters are constructed from any number of LDAP attributes specified as key-value pairs in parentheses. Filters can be combined using logical and comparison operators and can include wildcards. Here are a few examples:

  • (cn=John*) matches entries where the common name starts with John (* matches any character)
  • (!(cn=*Doe)) matches entries where the common name doesn’t end with Doe (! is logical NOT)
  • (&(cn=J*)(cn=*Doe)) matches entries where the common name starts with J and ends with Doe (& is logical AND)
  • (&(|(cn=John*)(cn=Jane*))(cn=*Doe)) matches entries where the common name starts with John or Jane and ends with Doe (| is logical OR)

Multiple filters and operators are combined using prefix notation (Polish notation), with arguments following the operator. For a full description of LDAP search filter syntax, see RFC 4515.

How LDAP Injection Works

As with SQL injection and related code injection attacks, LDAP injection vulnerabilities occur when an application inserts unsanitized user input directly into an LDAP statement. By crafting suitable string values using LDAP filter syntax, attackers can cause the LDAP server to execute a variety of queries and other LDAP statements. If combined with misconfigured or compromised permissions, LDAP injections may allow attackers to modify the LDAP tree and tamper with business-critical information.

While LDAP injections come in many shapes and sizes, here are two typical approaches:

  • Authentication bypass: Directory services are commonly used for user authentication and authorization, so the most basic LDAP injection attacks attempt to bypass password checking. Take the following vulnerable JavaScript code that directly assembles a simple LDAP filter from user inputs stored in the variables enteredUser and enteredPwd:For non-malicious users, the resulting filter should be something like:If this query is true, the user and password combination exists in the directory, so the user is logged in. However, an attacker can enter LDAP filter code as the user ID (shown in red) to create a filter that is always true, for example:This can allow the attacker to gain access without a valid user name or password.
  • (&(userID=*)(userID=*))(|(userID=*)(password=anything))
  • (&(userID=johndoe)(password=johnspwd))
  • filterContent = "(&(userID=" + enteredUser + ")(password=" + enteredPwd + "))"
  • Information disclosure: If a vulnerable application uses LDAP filters to provision shared resources, for example printers, an attacker performing recon might inject LDAP filter code to list all resources in the organization’s directory. Let’s say the following filter intended to list printers and scanners is assembled in an unsafe way:If the attacker can enter another value instead of printer and knows that userID is used for user names in the directory, they might inject the following code:This will list all printer and user objects, and the scanner part will be ignored by the server (only the first complete filter is processed).
  • (|(resType=printer)(userID=*))(resType=scanner))
  • (|(resType=printer)(resType=scanner))

Blind LDAP Injection

To directly query an LDAP server, the attacker needs to know (or guess) the attribute names so they can be specified in a filter. Blind LDAP injection is a more advanced exploitation technique for extracting unknown information by sending multiple requests and checking server responses to determine if the query is valid. Combined with additional optimizations and automation, this allows attackers to obtain information using a series of yes/no questions: a valid server response means “yes”, and a server error means “no”. Effective blind injection attacks typically involve several steps:

  • Attribute discovery: Attackers can query a variety of likely attributes and monitor server responses. If an attribute exists, the server will return a valid response. Otherwise, an error or empty response is returned. Let’s say an application unsafely constructs an AND filter to retrieve users, such as:If the attacker can manipulate the user ID value, they can inject code like the following to check if user objects in this directory have a department attribute:If the department attribute exists (and John Doe is a valid user ID), the server will return a valid response. Otherwise, the attacker can try other attribute names.
  • (&(userID=John Doe)(department=*))(objectClass=user))
  • (&(userID=John Doe)(objectClass=user))
  • Booleanization: Once an attribute name is known, the attacker can send a series of requests containing wildcards and/or comparison operators to determine specific attribute values. Again, only two server responses are considered, so booleanization is the process of transforming the search process into a series of true/false tests.
    (&(userID=John Doe)(department=a*))(objectClass=user))
    A valid server response means that a department starting with the letter “a” exists. The attacker can continue the process for ab*, ac*, and so forth, to discover subsequent characters. For numeric values, the operators <= (less than or equal to) and >= (greater than or equal to) can be used to go through the likely value space.
  • Let’s say the department attribute from the previous example exists. To discover the department name, the attacker can start by injecting the following code to check the first letter:
  • Character set reduction: To minimize the number of requests, attackers can use multiple wildcards to find out which characters are present anywhere in the target value. For example, a valid server response for the following injection:means that a department name containing the letter “x” exists. If an error or empty response is returned, the attacker can eliminate this character from the scan. This can greatly reduce the number of requests needed to find the target value.
  • (&(userID=John Doe)(department=*x*))(objectClass=user))

Preventing LDAP Injection in Web Applications

As with many other injection attacks, proper input validation and encoding in the application layer is critical to eliminate LDAP injection vulnerabilities. Every user input that might be used within LDAP queries should be sanitized according to application requirements and encoded to ensure that any remaining LDAP special characters are safely escaped, including at least ( ) ! | & *. The OWASP cheat sheet has more detailed information about escaping techniques. For maximum security and convenience, a ready framework or library should be used for escaping special characters and assembling LDAP filters.

 

 

 

'경로 및 정보' 카테고리의 다른 글

bug bounty epub  (0) 2022.03.18
Pyinstaller Decom  (0) 2022.01.29
WinDbg 6.12 버전  (0) 2022.01.20
Sonarqube 소스 분석 및 owasp top 10 점검  (0) 2022.01.19
노트패드 \r\n 개행  (0) 2022.01.17
블로그 이미지

wtdsoul

,

 

WinDbg 6.12.0002.633 Standalone Download

 

'경로 및 정보' 카테고리의 다른 글

Pyinstaller Decom  (0) 2022.01.29
Netsparker LDAP 인젝션  (0) 2022.01.20
Sonarqube 소스 분석 및 owasp top 10 점검  (0) 2022.01.19
노트패드 \r\n 개행  (0) 2022.01.17
nmap script nse 스캐닝  (0) 2021.12.29
블로그 이미지

wtdsoul

,