4.7 KiB
Vifaa vya Kusoma vya Ndani ya Python
{% hint style="success" %}
Jifunze na zoezi la Kuvamia AWS:Mafunzo ya HackTricks ya Mtaalam wa Timu Nyekundu ya AWS (ARTE)
Jifunze na zoezi la Kuvamia GCP: Mafunzo ya HackTricks ya Mtaalam wa Timu Nyekundu ya GCP (GRTE)
Support HackTricks
- Angalia mpango wa michango!
- Jiunge na 💬 Kikundi cha Discord au kikundi cha telegram au tufuate kwenye Twitter 🐦 @hacktricks_live.
- Shiriki mbinu za udukuzi kwa kuwasilisha PRs kwa HackTricks na HackTricks Cloud github repos.
Taarifa Msingi
Mazingira tofauti ya udhaifu kama Python Format Strings au Uchafuzi wa Darasa yanaweza kukuruhusu kusoma data ya ndani ya python lakini haitakuruhusu kutekeleza nambari. Hivyo, mchunguzi wa mtandao atahitaji kutumia vibali hivi vya kusoma ili kupata mamlaka nyeti na kukuza udhaifu.
Flask - Soma funguo ya siri
Ukurasa mkuu wa programu ya Flask labda utakuwa na app
kifaa cha jumla ambapo hii siri imewekwa.
app = Flask(__name__, template_folder='templates')
app.secret_key = '(:secret:)'
Katika kesi hii ni rahisi kupata ufikiaji wa kipengee hiki kwa kutumia kifaa chochote cha kufikia vitu vya ulimwengu kutoka kwenye Ukurasa wa Kupitisha Mchanga wa Python.
Katika kesi ambapo uwazi upo kwenye faili tofauti ya python, unahitaji kifaa cha kupita faili ili ufikie faili kuu ili kupata kipengee cha ulimwengu app.secret_key
kubadilisha funguo ya siri ya Flask na kuweza kupandisha vyeo ukiwa na funguo hii.
Mzigo kama huu kutoka kwenye andiko hili:
{% code overflow="wrap" %}
__init__.__globals__.__loader__.__init__.__globals__.sys.modules.__main__.app.secret_key
{% endcode %}
Tumia mzigo huu wa kubadilisha app.secret_key
(jina katika programu yako linaweza kuwa tofauti) ili uweze kusaini vidakuzi vya flask vipya na vyenye mamlaka zaidi.
Werkzeug - machine_id na uuid ya node
Kutumia mzigo huu kutoka kwenye andiko hili utaweza kupata machine_id na uuid ya node, ambayo ni siri kuu unayohitaji kuunda pin ya Werkzeug unayoweza kutumia kufikia konsoli ya python katika /console
ikiwa hali ya kurekebisha makosa imewezeshwa:
{ua.__class__.__init__.__globals__[t].sys.modules[werkzeug.debug]._machine_id}
{ua.__class__.__init__.__globals__[t].sys.modules[werkzeug.debug].uuid._node}
{% hint style="warning" %}
Tafadhali kumbuka unaweza kupata njia ya seva ya ndani kwa app.py
kwa kuzalisha kosa fulani kwenye ukurasa wa wavuti ambao utakupa njia hiyo.
{% endhint %}
Ikiwa udhaifu uko kwenye faili tofauti ya python, angalia hila ya awali ya Flask ya kupata vitu kutoka kwa faili kuu ya python.
{% hint style="success" %}
Jifunze & jifunze AWS Hacking:Mafunzo ya HackTricks AWS Red Team Expert (ARTE)
Jifunze & jifunze GCP Hacking: Mafunzo ya HackTricks GCP Red Team Expert (GRTE)
Support HackTricks
- Angalia mpango wa usajili!
- Jiunge na 💬 Kikundi cha Discord au kikundi cha telegram au tufuate kwenye Twitter 🐦 @hacktricks_live.
- Shiriki mbinu za udukuzi kwa kuwasilisha PRs kwa HackTricks na HackTricks Cloud github repos.