Oops! It appears that you have disabled your Javascript. In order for you to see this page as it is meant to appear, we ask that you please re-enable your Javascript!
Jum. Agu 23rd, 2019

Dasar-dasar dari XPath untuk XPath Injection 2

4 min read

Dasar-dasar dari XPath untuk XPath Injection 2
Mulai dari nama dewa saya “Allah” yang paling dermawan paling penyayang

Ini adalah bagian kedua dari dasar-dasar untuk XPath Injection, dalam tutorial ini kita akan mempelajari permintaan dasar XPath.

Judul dalam dokumen ini:

  • Memilih Node Dalam XPath
  • Dasar XPath Pernyataan
  • Predikat Dalam XPath
  • Memilih diketahui Jalur
  • Memilih Beberapa Jalur
  • Pengantar Injection di XPath Query


Sekali lagi kita akan mengambil beberapa referensi dari W3s kemudian setelah kita memahami pertanyaan dasar kita akan belajar bagaimana untuk menyuntikkan mereka.

XML Contoh Dokumen
Kami akan menggunakan dokumen XML berikut dalam contoh di bawah ini.

<? Xml version = “1.0” encoding = “UTF-8”?>

<Toko buku>

<Book>

<Title lang = “eng”> Harry Potter </ title>

<Harga> 76,99 </ harga>

</ Buku>

<Book>

<Title lang = “eng”> Belajar XML </ title>

<Harga> 22,95 </ harga>

</ Buku>

<Book>

<Title lang = “eng”> Belajar XPath </ title>

<Harga> 30,20 </ harga>

</ Buku>

<Book>

<Title lang = “eng”> Belajar Rahasia Suntikan </ title>

<Harga> 50.99 </ harga>

</ Buku>

<Book>

<Title lang = “eng”> Belajar Pemrograman </ title>

<Harga> 53,45 </ harga>

</ Buku>

</ Toko buku>


memilih Nodes

XPath menggunakan ekspresi jalan untuk memilih node dalam dokumen XML. simpul yang dipilih dengan mengikuti jalan atau langkah-langkah. Ekspresi jalan yang paling berguna tercantum di bawah ini:

ekspresi Keterangan
nodename: Pilih semua node dengan nama “nodename”
/: Memilih dari simpul akar
//: Memilih node dalam dokumen dari node saat ini yang cocok dengan pilihan di mana pun mereka berada
. : Memilih node saat
..: Memilih induk dari node saat
@: Memilih atribut

Beberapa Dasar XPath Ekspresi

Dalam tabel di bawah ini kami telah mendaftarkan beberapa ekspresi jalan dan hasil dari ekspresi:

Jalan Ekspresi Hasil

toko buku: Pilih semua node dengan nama “toko buku”
/ Toko buku: Memilih toko buku akar elemen
Catatan: Jika jalan dimulai dengan garis miring (/) selalu merupakan jalan mutlak untuk elemen!

toko buku / book: Memilih semua elemen buku yang adalah anak-anak dari toko buku
// Buku: Memilih semua elemen buku di mana pun mereka berada dalam dokumen
toko buku // buku: Memilih semua elemen buku yang keturunan elemen toko buku, di mana pun mereka berada di bawah elemen toko buku

// @ Lang: Memilih semua atribut yang bernama lang

predikat

Predikat digunakan untuk mencari node tertentu atau node yang berisi nilai tertentu.

Predikat selalu tertanam dalam kurung persegi.

Dalam tabel di bawah ini kami telah mendaftarkan beberapa ekspresi jalan dengan predikat dan hasil dari ekspresi:

Jalan Ekspresi Hasil

/ Toko buku / buku [1]: Memilih elemen buku pertama yang adalah anak dari elemen toko buku.

/ Toko buku / buku [terakhir ()]: Memilih elemen buku terakhir yang adalah anak dari elemen toko buku

/ Toko buku / buku [terakhir () – 1]: Memilih semua elemen buku kecuali yang terakhir yang adalah anak-anak dari elemen toko buku

/ Toko buku / buku [posisi () <3]: Memilih dua elemen buku pertama yang adalah anak-anak dari elemen toko buku

// Judul [@lang]: Memilih semua elemen judul yang memiliki atribut bernama lang

// Judul [@ lang = ‘eng’]: Memilih semua elemen judul yang memiliki atribut bernama lang dengan nilai ‘eng’

/bookstore/book[price>35.00]: Memilih semua elemen kitab unsur toko buku yang memiliki unsur harga dengan nilai lebih besar dari 35,00

/bookstore/book[price>35.00]/title: Memilih semua elemen judul elemen kitab unsur toko buku yang memiliki unsur harga dengan nilai lebih besar dari 35,00

Memilih diketahui Nodes

wildcard XPath dapat digunakan untuk memilih elemen XML tidak diketahui.
wildcard Deskripsi
* Cocok setiap node elemen
@ * Cocok setiap atribut simpul
simpul () Cocok setiap node apapun

Dalam tabel di bawah ini kami telah mendaftarkan beberapa ekspresi jalan dan hasil dari ekspresi:

Jalan Ekspresi Hasil

/ Toko buku / * Pilih semua node anak dari elemen toko buku

// * Memilih semua elemen dalam dokumen

// Judul [@ *] Pilih semua elemen judul yang memiliki atribut apapun



Memilih Beberapa Jalur

Dengan menggunakan | operator dalam ekspresi XPath Anda dapat memilih beberapa jalur.

Dalam tabel di bawah ini kami telah mendaftarkan beberapa ekspresi jalan dan hasil dari ekspresi:

Jalan Ekspresi Hasil

// Buku / judul | // Buku / harga Pilih semua gelar DAN harga elemen dari semua elemen buku

// Judul | // Harga Pilih semua gelar DAN harga elemen dalam dokumen

/ Toko buku / buku / judul | // Harga Memilih semua elemen judul elemen kitab elemen toko buku dan semua elemen harga dalam dokumen


Pengantar Injection di XPath Query

Oke jika Anda membaca konten di atas maka mari kita misalnya mengambil halaman yang mengambil beberapa masukan nama dan menunjukkan nomor telepon pengguna bahwa jika pengguna ada di file XML. Ketika menyuntikkan kita tahu bahwa untuk tipe string baik kutip tunggal atau quoute ganda akan digunakan bahwa kita dapat memeriksa dengan menggunakan ‘ “atau” “=” “untuk kutipan ganda dan kita dapat menggunakan’ ‘atau’ ‘=’ ‘untuk kutip tunggal periksa baik-baik saja sehingga yang pernah bekerja kita akan mengetahui bahwa itu digunakan intenally ke query sekarang memungkinkan hanya berasumsi kueri sederhana.

/ Root / parent / sesuatu [username = ‘our_input_here’] / user

Jadi username yang diambil setelah kondisi semakin username sebagai masukan. Sekarang kita tahu bahwa jika kita membuat kondisi benar menggunakan ‘atau’ ‘=’ kita akan dapat melihat pengguna pertama rincian. Tapi kemudian kita ingin menghitung dengan setiap pengguna satu per satu. seperti yang kita tahu posisi () fungsi memilih setiap node satu per satu. Jadi kita dapat menggunakannya untuk menghitung setiap pengguna satu per satu. Kita mulai.

/ Root / parent / sesuatu [username = ” atau posisi () = 1 atau ”] / user

/ Root / parent / sesuatu [username = ” atau posisi () = 2 atau ”] / user

/ Root / parent / sesuatu [username = ” atau posisi () = 3 atau ”] / user

/ Root / parent / sesuatu [username = ” atau posisi () = 4 atau ”] / user

/ Root / parent / sesuatu [username = ” atau posisi () = 5 atau ”] / user

Ini adalah bagaimana kita dapat menghitung setiap pengguna satu per satu.

Saya harap Anda belajar dasar-dasar XPath dan XPath injection. Dalam tutorial berikutnya saya akan menjelaskan XPath injeksi lebih detail dan beberapa cara yang jauh lebih baik dari suntik di XPath Query.

Facebook Comments

3 thoughts on “Dasar-dasar dari XPath untuk XPath Injection 2

  1. 23117 382079Hey there! Someone in my Myspace group shared this web site with us so I came to take a look. Im definitely enjoying the details. Im bookmarking and will likely be tweeting this to my followers! Excellent weblog and outstanding style and design. 446512

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

Copyright © All rights reserved. | News by AF MD5.