전체 글 (81) 썸네일형 리스트형 EZ_command_injection 보호되어 있는 글입니다. CSS Injection 보호되어 있는 글입니다. Command Injection 보호되어 있는 글입니다. URL 이중인코딩 https://webhacking.kr/challenge/web-11/ Challenge 26 webhacking.kr관련 문제 view-source 한 번 인코딩된 문자열 검사:문자열: %61%64%6d%69%6epreg_match("/admin/", "%61%64%6d%69%6e")는 %61을 a, %64를 d, %6d를 m, %69를 i, %6e를 n으로 인식합니다.따라서, %61%64%6d%69%6e는 admin을 포함한다고 인식하여 "no!"를 출력하고 종료합니다.이중 인코딩된 문자열 검사:문자열: %2561%2564%256d%2569%256epreg_match("/admin/", "%2561%2564%256d%2569%256e")는 %25를 %로 인식하고, 뒤에 오는 61은 그대로 61로 .. SSTI 개념 정리 | simple-ssti SSTI 취약점이란? 서버 측 템플릿 엔진에서 템플릿을 렌더링하는 과정에서 발생할 수 있는 취약점입니다. 이 취약점은 공격자가 임의의 입력을 통해 템플릿 엔진에 악성 코드를 삽입하고, 이를 통해 서버 측에서 임의의 코드를 실행할 수 있게 됩니다. 렌더링(Rendering)은 템플릿 엔진이나 브라우저가 데이터를 받아서 최종적으로 사용자에게 보여줄 형식으로 변환하는 과정을 말합니다. 웹 개발에서 렌더링은 주로 HTML, CSS, JavaScript 등의 데이터를 사용자에게 시각적으로 보여주는 역할을 합니다. 템플릿 엔진은 동적 웹 페이지를 생성하기 위해 템플릿 파일을 데이터와 결합하여 최종 HTML 페이지를 만드는 도구입니다. 참고자료https://core-research-team.github.io/20.. LORD OF SQLINJECTION - ORGE 그냥... 갑자기 풀어봤다 query : {$query}"; $result = @mysqli_fetch_array(mysqli_query($db,$query)); if($result['id']) echo "Hello {$result[id]}"; $_GET[pw] = addslashes($_GET[pw]); $query = "select pw from prob_orge where id='admin' and pw='{$_GET[pw]}'"; $result = @mysqli_fetch_array(mysqli_query($db,$query)); if(($result['pw']) && ($result['pw'] == $_GET['pw'])) solve("orge"); highligh.. [Frida] Uncrackable Level 1 풀이 앱을 실행하면 다음과 같이 루트가 탐지됐다는 문구가 뜬다 어디에서 발생하는 것인지 소스코드를 확인해보자. MainActivity 클래스에서 a 메소드를 통해 루트 탐지 문구가 발생하는 것을 알아냈다그렇다면 a 메소드를 확인해보자 setButton 함수로 ok 버튼 만들고, 해당 버튼을 클릭하면 onClick 메소드가 실행되어 system.exit에 의해 앱이 종료된다는 것을 파악했다 그러니까 ok를 눌러도 앱이 종료되지 않게 후킹을 하면 루트 탐지 우회를 할 수 있지 않을까? 여기서 잠깐 OnClick 메서드는 OnClickListener 인터페이스에 정의되어 있는 메서드이다.프리다에는 인터페이스를 가져오는 API가 없기 때문에 onClick 메서드 대신 안에 있는 system.exit를 재작성할 것.. FridaLab 5 ~ 8 풀이 FridaLab 05>> chall05() 메소드에 frida 문자열을 항상 전송하기 함수를 재작성하기 위해 Java.use 사용함check 버튼을 누를 때마다 chall05()가 실행됨setImmediate(function() { Java.perform(function(){ var chall_05 = Java.use("uk.rossmarks.fridalab.MainActivity"); chall_05.chall05.implementation = function(arg1){ // 기존 함수와 동일한 로직 this.chall05("frida"); console.log("\nSolved Chall05"); } })}) FridaLab 06>> 올바른 값으로 10초 후 chall06() .. 이전 1 2 3 4 ··· 11 다음