requests.get, flask -request, flask ඉල්ලීම් පෝරමය

Request.get in Flask: ඔබට මග හැරිය හැකි සරල එන්නත් දෛශිකය

පටුන

කියවිය යුතුම සටහන්

නවතම උනන්දුවක් දක්වන පළ කිරීම්

ඔබට වියදම් විය හැකි මග හැරුණු චෙක්පතක්: Requests.get සහ Flask ඉල්ලීම් පෝරමය

මෙය සිතන්න: කනිෂ්ඨ සංවර්ධකයෙකු විශේෂාංගයක් නැව්ගත කිරීමට පීඩනය යටතේ කටයුතු කරයි. ඔවුන් Flask යෙදුමක් විවෘත කර, නව මාර්ගයක් එකතු කර, විමසුම් පරාමිතියක් අල්ලාගෙන ඉදිරියට යයි.

මුලින්ම බැලූ බැල්මට, මෙම Flask ඉල්ලීම් භාවිතය හොඳින් පෙනේ. නමුත් අත්හරින්න ටයිප්=int ඔබ දොර අරින්න එන්නත් ප්‍රහාර. "එය අගයක් ලබා ගැනීම පමණක්" නිසා කේත සමාලෝචන පසුකර යන අවදානම් වර්ග මේවාය.

අවදානම සැඟවී ඇති තැන Fලැස්ක් ඉල්ලීම සහ Fලැස්ක් ඉල්ලීම් පෝරමය

දෙකම flask.request (ෆ්ලැස්ක්.රික්ට්) සහ flask.request.form එක විශ්වාස කළ නොහැකි ප්‍රවේශ ස්ථාන වේ. ඔවුන් ආපසු ලබා දෙන සෑම අගයක්ම සේවාදායකයාගෙන් කෙලින්ම පැමිණෙන අතර ඒවා සතුරු විය හැකි ලෙස සැලකිය යුතුය.

මෙම දත්ත වලංගු කිරීමට හෝ සනීපාරක්ෂාව කිරීමට අපොහොසත් වීම තීරණාත්මක ආරක්ෂක ගැටළු වලට තුඩු දිය හැකිය, ඒවා අතර:

මෙම අවදානම් දත්ත සමුදායන් හෝ ඉදිරිපස විදැහුම්කරණයට පමණක් අදාළ නොවේ; ප්‍රහාරකයින් සැකිලි වල භාවිතා කරන යෙදවුම් හෝ උප ක්‍රියාවලි වෙත ලබා දෙන යෙදවුම් ද සූරාකෑමට ඉඩ ඇත.

ආරක්ෂිත ව්‍යාජ කේත රටා:

වැළැක්වීම CI/CD බලාත්මක කිරීම:

වාක්‍ය ඛණ්ඩය ආරක්ෂිත බව පෙනුනත්, සැකිලි හෝ පද්ධති විධානවල අමු හෝ පරීක්ෂා නොකළ අගයන් භාවිතා කිරීම බරපතල එන්නත් දෛශිකයක් බවට පත්විය හැකිය.

ප්‍රායෝගික එන්නත් ප්‍රවාහය (ආරක්ෂිත සමාකරණය)

ප්‍රබන්ධ, ආරක්ෂිත අවස්ථාවක් භාවිතා කරමින්, එන්නත් දෝෂයක් සාමාන්‍යයෙන් දිග හැරෙන ආකාරය මෙන්න:

  1. පරිශීලකයෙකු විසින් සකස් කරන ලද විමසුම් පරාමිතියක් යෙදුමට යවයි.
  2. යෙදුම අගය කියවන්නේ ඉල්ලීම.ආර්ග්ස්.ලබා ගන්න() වලංගුකරණයකින් තොරව.
  3. එම අගය SQL විමසුමකට, සැකිලි තන්තුවකට හෝ ෂෙල් විධානයකට කෙලින්ම සම්බන්ධ වේ.
  4. එන්නත් කරන ලද අන්තර්ගතය නොදැන පද්ධතිය එම තර්කනය ක්‍රියාත්මක කරයි.

ව්‍යාජ කේතය (අනාරක්ෂිත, නිදර්ශන සඳහා පමණි):

ප්‍රබන්ධ ලොග් හෝඩුවාවක්:

මෙම උදාහරණය ස්ථාන දරන්නන් භාවිතා කළද, ආදාන හැසිරවීමේදී කුඩා අතපසුවීම් තීරණාත්මක අවදානම් වලට තුඩු දිය හැකි ආකාරය එය පිළිබිඹු කරයි.

ස්වයංක්‍රීය පරීක්ෂණ සාමාන්‍යයෙන් වලංගු ආදාන වර්ග සඳහා පරීක්ෂා කරන නිසා, විකෘති වූ හෝ ද්වේෂසහගත ඒවා සඳහා නොවේ, මන්ද ඒවා මෙය මඟ හැරිය හැක.

යැපීම් වල සැඟවුණු අවදානම් භාවිතා කිරීම ෆ්ලැස්ක් ඉල්ලීම සහ ෆ්ලැස්ක් ඉල්ලීම් පෝරමය

ඔබේ කේතය පිරිසිදු විය හැකි නමුත්, තෙවන පාර්ශවීය පැකේජ තවමත් ඔබව බිඳ දැමිය හැකිය.
සමහර Flask ප්ලගීන හෝ පුස්තකාල අභ්‍යන්තරව වලංගු කිරීමකින් තොරව flask ඉල්ලීම හෝ flask ඉල්ලීම් පෝරමය අමතයි.

කල්පිත පැකේජ සහිත උදාහරණය:

In CI/CD, ස්වයංක්‍රීය යැපුම් යාවත්කාලීන කිරීම් මඟින් නිහඬව අනාරක්ෂිත ඉල්ලීම්. ඇමතුම් ලබා ගැනීම හෝ අවදානමට ලක්විය හැකි ආදාන හැසිරවීමේ රටා හඳුන්වා දිය හැකිය.

කොතරම් අනාරක්ෂිතද ෆ්ලැස්ක් ඉල්ලීම භාවිත ස්ලිප් අතීත කේත සමාලෝචන

වේගවත් පරිසරවල, කුඩා නමුත් භයානක වැරදි බොහෝ විට අවධානයට ලක් නොවී යයි, විශේෂයෙන් වෙනස හානිකර නොවන බව පෙනෙන විට.

උදාහරණයක් pull request වෙනස:

සමාලෝචක අදහස:
"හොඳයි වගේ, පරාමිතියක් ලැබෙනවා විතරයි."

මෙම ආකාරයේ අධීක්ෂණය පොදු වන්නේ:

  • සංජානන නැඹුරුව: සමාලෝචකයින් පෙරනිමියෙන් request.args.get() ආරක්ෂිත යැයි උපකල්පනය කළ හැකිය.
  • කාල පීඩනය: නියමිත කාලසීමාවන් ළඟා වන විට ආරක්ෂක පරීක්ෂාවන් පසුපසට ගනී.
  • වෙනස හුරුපුරුදුකම: වෙනස සුළු ලෙස පෙනේ, එබැවින් එය ගැඹුරු පරීක්ෂාවකට ලක් නොවේ.

පැහැදිලි නීති හෝ ස්වයංක්‍රීය බලාත්මක කිරීමකින් තොරව, මෙම සියුම් අවදානම් නොදැනුවත්වම නිෂ්පාදනයට ලිස්සා යයි.

ක්‍රියාත්මක වන වැළැක්වීම

එන්නත් කිරීමේ අවදානම අවම කිරීම සඳහා, ආදාන වලංගුකරණය, ස්වයංක්‍රීය ස්කෑන් කිරීම සහ පරීක්ෂණ ආවරණය ඒකාබද්ධ කරන්න.

 වාත්තු කිරීම සහ සුදු ලැයිස්තුගත කිරීම සමඟ ආදාන වලංගුකරණය:

වාත්තු කිරීම මඟින් අගය ආරක්ෂිත වර්ගයකට බල කෙරෙන අතර, සුදු ලැයිස්තුගත කිරීම දන්නා-හොඳ අගයන් පමණක් ඉදිරියට යාම සහතික කරයි.

ස්ථිතික යෙදුම් ආරක්ෂක පරීක්ෂාව (SAST) තුල CI/CD:

මෙම පියවර වලංගු නොවන ඉල්ලීම.ආර්ග්ස්.ලබා ගන්න() or ඉල්ලීම.පෝරමය.ලබා ගන්න() නිෂ්පාදනයට ළඟා වීමට පෙර ඇමතුම්.

සනීපාරක්ෂක කටයුතු බලාත්මක කිරීම සඳහා ඒකක පරීක්ෂණ:

මෙම පරීක්ෂණ මඟින් යෙදුම නිරන්තරයෙන් විකෘති හෝ ද්වේෂසහගත ආදානය ප්‍රතික්ෂේප කරන බව සහතික කරයි.

DevSecOps වෙත ඒකාබද්ධ කිරීම Pipelines

මධ්‍යම මෘදුකාංග බලාත්මක කිරීම:

@app.before_request

ඔබගේ කේතය සහ තෙවන පාර්ශවීය පරායත්තතා දෙකම පරිලෝකනය කිරීම නිෂ්පාදනයට ළඟා වීමට පෙර අනාරක්ෂිත requests.get, flask request සහ flask request form භාවිතය අල්ලා ගැනීමට උපකාරී වේ.

මෙම ගැටළුව කුප්පියට වඩා ඔබ්බට යයි

අනාරක්ෂිත ආදාන හැසිරවීම Flask සඳහා පමණක් අනන්‍ය නොවේ, එය වෙබ් රාමු හරහා පවතී. වාසනාවකට මෙන්, විසඳුම ස්ථාවරයි: ආදාන කලින් සහ දැඩි ලෙස වලංගු කරන්න.

ජැන්ගෝ (ආරක්ෂිත ව්‍යාජ කේතය):

FastAPI (වර්ග ඉඟි භාවිතයෙන් නිර්මාණයෙන් ආරක්ෂිතයි):

උදාහරණ දෙකම ආදාන වර්ගය සහ පරාසය බලාත්මක කරයි, එන දත්ත සංවේදී තර්කනයට ළඟා වීමට පෙර විශ්වාසදායක බව සහතික කරයි.

Flask, Django හෝ FastAPI වේවා, සෑම ඉල්ලීම් පරාමිතියක්ම නිසි ලෙස වලංගු නොකළහොත් විභව එන්නත් ලක්ෂ්‍යයකි.

DevSecOps හි අනාවරණය සඳහා Xygeni භාවිතා කිරීම

DevSecOps පරිසරයක, අතින් සමාලෝචන ප්‍රමාණවත් නොවේ. සයිජෙනි අනාරක්ෂිත ෆ්ලැස්ක් ඉල්ලීම, ෆ්ලැස්ක් ඉල්ලීම් පෝරමය සහ requests.get භාවිතය ස්වයංක්‍රීය කරයි.

ප්‍රායෝගික DevSecOps යෙදුම්:

  1. ස්ථිතික ස්කෑන්: ඕනෑම කොඩියක් ඉල්ලීම.ආර්ග්ස්.ලබා ගන්න() තොරව වර්ගය=, සහ වලංගුකරණයක් නොමැති ෆ්ලැස්ක් ඉල්ලීම් පෝරම ඇමතුම්.
  2. යැපුම් විශ්ලේෂණය: වක්‍ර ඇමතුම් හරහා මතු විය හැකි අනාරක්ෂිත රටා සඳහා පුස්තකාල නිරීක්ෂණය කරයි.
  3. අනාරක්ෂිත ඒකාබද්ධ කිරීම් අවහිර කිරීම: CI/CD නව කේතය අවදානම් සහිත ඉල්ලීම්.get හෝ වලංගු නොකළ පෝරම ප්‍රවේශය හඳුන්වා දෙන්නේ නම් අසාර්ථක වේ.
  4. මූලික බලාත්මක කිරීම: ආරක්ෂිත ඇමතුම් අනාරක්ෂිත ඒවා බවට නැවත පැමිණීම වැළැක්වීම සඳහා වෙනස්කම් නිරීක්ෂණය කරයි.

මෙම පරීක්ෂාවන් ස්වයංක්‍රීය කිරීම මානව දෝෂ අවදානම අඩු කරයි සහ බෙදාහැරීම මන්දගාමී නොකර ආරක්ෂාව අඛණ්ඩව පවත්වා ගනී.

ඉතින්, වලංගු කරන්න, සනීපාරක්ෂාව කරන්න, ස්වයංක්‍රීය කරන්න

මෙන්න මූලික කරුණ: requests.get, flask request, සහ flask request form යන සියල්ලම පෙරනිමියෙන් විශ්වාස නොකළ. ඔබ පියවර නොගන්නේ නම්, ඔවුන් සතුටින් අනිෂ්ට දත්ත ලබා දෙනු ඇත.

ඔබේ නීති තුන:

  • වලංගු කරන්න වාත්තු කිරීම සහ සුදු ලැයිස්තු භාවිතා කරමින් යෙදවුම්.
  • විෂබීජහරණය කරන්න දත්ත සංවේදී මෙහෙයුම් ස්පර්ශ කිරීමට පෙර.
  • ස්වයංක්රීයකරණය ඔබගේ පරීක්ෂාවන් pipeline යෙදවීමට පෙර අනාරක්ෂිත කේතය නැවැත්වීමට.

අනාරක්ෂිත තනි ෆ්ලැස්ක් ඉල්ලීම් හසුරුවන්නෙකු, සලකුණු නොකළ ෆ්ලැස්ක් ඉල්ලීම් පෝරම ක්ෂේත්‍රයක් හෝ අනාරක්ෂිත requests.get ඇමතුමක් ඔබගේ යෙදුම අවදානමට ලක් කළ හැකිය. සෑම පරාමිතියක්ම සතුරු විය හැකි ලෙස සලකන්න, සහ ඔබේ DevSecOps වලට ඉඩ දෙන්න pipeline සෑම අවස්ථාවකදීම නීති ක්‍රියාත්මක කරන්න.

sca-මෙවලම්-මෘදුකාංග-සංයුතිය-විශ්ලේෂණ-මෙවලම්
ඔබේ මෘදුකාංග අවදානම් ප්‍රමුඛතාවය දෙන්න, නිවැරදි කරන්න සහ සුරක්ෂිත කරන්න
ඔබගේ නොමිලේ ගිණුම ලබා ගන්න.
කිසිදු ක්රෙඩිට් කාඩ්පතක් අවශ්ය නොවේ.

ඔබේ මෘදුකාංග සංවර්ධනය සහ බෙදා හැරීම සුරක්ෂිත කරන්න

Xygeni නිෂ්පාදන කට්ටලය සමඟ