PHP include and bypass SSRF protection with two DNS A records – 33c3ctf list0r (web 400)

list0r을 살펴 보겠습니다 400 포인트 웹 도전이므로 정말 열심히해야합니다

우리가 행운을 얻었지만 모든 웹 문제가 여러 가지로 파손되었음을 알고 있기 때문에 방법보다 쉬운 솔루션을 계획했다 이 설명은 우리에게 많은 정보를주지는 않습니다 목록을 관리하십시오 그럼 한번 살펴 보겠습니다 일반적으로 웹 테스트의 경우 HTTP 프록시를 사용하여 요청을 분석하는 것이 좋습니다

브라우저 개발자 도구를 사용하면 작동하지만 창이나 트림을위한 바이올린과 같은 프로그램 많은 편의를 제공합니다 그래서 나는 프록시를 사용하고 트림을 시작하기 위해 파이어 폭스를 설치했다 이제 모든 브라우저 요청을 볼 수 있습니다 여기 방문 페이지가 있습니다 "삶에 지루해? 일부 목록 만들기 "whooop ok

먼저 로그인 할 계정이 필요하므로 계정을 등록하십시오 그리고 여러분은 burp 기록을 확인하여 POST 요청과 같은 HTTP 요청을 볼 수 있습니다 양식 데이터를 보낸 요청 우리는 이미 페이지가 하나의 php 파일을 사용하지 않는 것처럼 보이지만, GET 매개 변수 페이지는 기능을 결정합니다 그럼 로그인하겠습니다 여기서 몇 가지 목록을 만들 수 있습니다

전에 hohoho 도전과 마찬가지로, 나는이 시점에서이 작업을하지 않았다 팀의 다른 직원이 기능을 분석하기 시작했습니다 양식을 가지고 놀았습니다 아마도 XSS 또는 SQL 주입을 시도했을 것입니다 흥미로운 기능 중 하나가 프로필 편집 페이지 인 것 같습니다

여기에서 URL을 제공하여 사진을 업로드 할 수 있습니다 서버 측 요청 위조와 같은 냄새가납니다 requestbin과 같은 서비스를 사용하여 웹 응용 프로그램에서 발급 한 HTTP 요청을 볼 수 있습니다 따라서 requestbin 추적 URL을 사용하여 아바타 URL 입력란에 입력 한 다음 우리는 HTTP 요청을 볼 수 있습니다 하지만 여기에는 특별한 것이 없으며 요청이나 기타 사항에 따라 보내지는 플래그가 없습니다

그러나 Sever Side 요청 위조가있을 수 있습니다 우리는 또한 burp를 사용하여 조금 더 탐험 할 수 있습니다 우리는 rightclick-> repeater에 보내기를 할 수 있습니다 이제 원시 HTTP 요청을 수정할 수 있습니다 그것을 다시 보내라 이를 통해 우리는 서버 쪽 요청 위조를 유발할 요청을 처리 할 수 ​​있습니다

예를 들어 파일 프로토콜을 사용하여 로컬 파일을 누출 할 수있는 경우 시도해 볼 수 있지만 작동하지 않습니다 호스트에 대한 검사를 건너 뛸 수 있습니다 그러나 실제로는 아무것도 나오지 않지만 우리는 그 부분을 명심해야합니다 아마도 이유가 있습니다 다음은 페이지 매개 변수를 테스트하는 것입니다

어쩌면 매개 변수를 사용하여 임의의 파일을 포함 할 수 있습니다 우리는 끝에 php를 지정하지 않으므로 간단한 include라면 추가 할 것입니다 그것에 php

그리고 그것을 우회하는 nullbyte는 2017 년에는 더 이상 존재하지 않습니다 Nullbytes는 오래된 PHP 버전에서만 작동합니다 따라서 우리가 무엇을해서든지 php로 끝나야합니다 확인해야 할 공통점은 PHP 필터 래퍼입니다

이 스 니펫은 계속 보관할 수 있습니다 당신은 그 자신의 정확한 특징을 연구 할 수 있지만, 우리가 사용할 것은 PHP 필터입니다 base64로 변환하는 것 변환 된 파일은 resource 매개 변수에 의해 지정됩니다 그래서 이것이 작동하면 index

php 파일을 열고 base64로 변환 한 후 그 파일을 전달해야합니다 포함에 그리고 그것은 작동합니다 이 큰 base64 청크를보십시오 우리는 그것을 디코딩하여 index

php에서 PHP 코드를 얻을 수 있습니다 여기에 취약한 포함을 볼 수도 있습니다 이제 더 많은 코드를 덤프 할 수 있습니다 예를 들어, functionsphp 및 header

php 파일 functionsphp 파일에서 우리는 URL을 취하는 아마 get_contents 함수를 발견 할 것이다 프로파일의 이미지를 가져 오는 부분 일부는 소스를 탐색하는 동안 다른 사람은 로그인이 깨진 것을 깨달았습니다

암호없이 모든 사용자로 로그인 할 수 있습니다 우리는 그것이 이것이 도전의 일부라고 생각했지만 실수였습니다 이 방법으로 관리자로 로그인 할 수 없었어야합니다 그러나 이것은 비밀 호스트 URL을 신속하게 밝혀 냈습니다 비밀 URL은 localhost에서만 액세스 할 수 있습니다

그리고 지금은 서버 쪽 요청 위조가 시작됩니다 이미지 URL 업로드를 악용하여 해당 경로를 요청할 수있는 경우 URL이 생성됩니다 이제 PHP 코드를 다시 살펴 보겠습니다 여기 몇 가지 URL 확인을 볼 수 있습니다 먼저 URL을 디코드하고 호스트를 확인합니다

도메인을 사용했다면 DNS 서버에 IP를 쿼리하고 그렇지 않은지 확인합니다 localhost와 같은 항목에 액세스 해보십시오 망할 그런 다음 컬을 사용하여 요청을 수행합니다 우리에게는 파일과 scp를 제외한 모든 프로토콜을 활성화하는 옵션을 보는 것이 매우 의심 스러웠습니다

파일은 분명히 로컬 파일을로드 할 수 있으며 scp는 로컬 가능하면 원격 파일 지원되는 모호한 프로토콜 목록은 길지만 많은 경험이 없습니다 그 (것)들과 가진 그러나 우리는 트릭이 거기에서 속이는 직감이 있었다 그것이 의도 된 솔루션의 일부로 판명되었지만, (많은 다른 팀) 훨씬 쉬운 것 문제는 마지막 옵션 라인에 있습니다

이 주석은 PLZ를 다시 바인딩하는 dns가 없다고 말합니다 이 옵션을 사용하면 특정 도메인을 특정 IP로 해석 할 수 있어야합니다 여기서 도메인은 IP로 확인 된 다음 도메인이 확인되지 않았습니다 localhost DNS 리 바인딩 공격에서는 사용 경쟁 시간을 오용 할 수 있습니다

이 검사로 도메인을 유효한 IP로 확인한 다음 신속하게 변경합니다 DNS 레코드와 curl이 URL을 더 아래로 열려고 할 때, 이제 가리킨다 localhost 그리고 그 옵션은 그것을 방지하기로되어 있습니다 도메인이 초기 IP에서 원래 IP로 변환되도록하고, DNS 서버가 변경됩니다

저는이 시간에이 시험에 참여하여 시험을 도왔습니다 이미지를 요청한 부분을 추출하여 간단한 테스트 스크립트에 넣었습니다 추가적인 디버깅 출력 등을 추가했습니다 그래서 나는 신속하게 물건을 테스트 할 수 있습니다 이제 우리는 그걸 가지고 놀 수 있습니다

예를 들어 우리가 localhost를 쿼리하려고 할 때, php는 URL을 구문 분석 한 다음 이것을 수행합니다 in_cidr 테스트하고 결국 중지합니다 하지만 내 웹 사이트를 쿼리하려고하면 내 도메인의 DNS 항목이 2 개의 엔트리를 반환합니다 DNS 서버는이 도메인에 대해 두 개의 IP를 알립니다 그리고 PHP 코드는 첫 번째 항목을 사용합니다

이것은 두 번째로 편리 할 것이지만, 처음에는 또 다른 아이디어입니다 우리는 컬 (curl)과 PHP에서 파서 (parser) 차이를 가지고 놀았습니다 예를 들어 다음과 같이 발견했습니다 도메인 앞에 ip와 port를 questionmark와 @, PHP에서 parse_url은 IP가 사용자 이름이고 port-questionmark라고 생각합니다 암호입니다

그것들은 @가있는 도메인의 콜론 정보에 의해 분리되기 때문에 따라서 DNS 쿼리 liveoverflowcom이 호스트 이름으로 해석됩니다 그러나 곱슬 곱슬 다른 한편으로는 물음표를보고 여기에 GET 매개 변수가 있다고 생각합니다 시작하고 호스트는 분명히 localhost 127

001입니다 그리고 실제로 localhost를 쿼리합니다 우회했습니다

그러나 문제는 어떤 경로도 지정할 수 없다는 것입니다 최상위 루트 경로에 대해서만 요청을받을 수 있으므로 플래그를 가져 오는 행운은 없습니다 이 문제에 더 많은 시간을 할애해도 꽤 우회 할 수 있습니다 어쨌든, DNS 리 바인딩이 제대로 구현되었다는 챌린지 작성자를 신뢰할 수있었습니다 EVENTHOUGH 해결 옵션을 구문 분석 할 수 없다는 경고를 보았습니다

나는 그런 순진한 사람이다 1 시간 정도가 지나서 친구가 저에게 상기시켜주었습니다 "이봐, 너 DNS 재 바인딩 옵션이 작동하지 않는지 확인하십시오 구문이 잘못 되었습니까? " 그리고 나는 같았다 에 씨발

왜 내가 이것을 오랫동안 무시 했는가? 그리고 예, 그것은 쉬운 솔루션을 허용하는 또 다른 의도하지 않은 버그로 밝혀졌습니다 그리고 여기에 우리가 DNS 항목이 두 개의 IP를 반환 할 수 있다는 사실이 돌아갑니다 나는 두 개의 IP를 반환하는 densrebindcom 도메인을 설정했습니다 8

888 및 localhost를 참조하십시오 같은 방법으로 liveoverflow가 설정됩니다 따라서 이제 해당 도메인을 사용하고 해당 도메인의 이미지를 요청하면 응답으로 localhost를 사용하면 오류가 발생하지만 다시 시도 할 때 오류가 발생할 수 있습니다

유효한 IP를 먼저 사용하고 curl은 localhost를 사용합니다 그리고 이것은 그 길을 성공적으로 요청하고 깃발을 우리에게 제공 할 것입니다 나를 위해 배운 교훈, 경고를 무시하지 마십시오 그리고 고퍼 프로토콜을 조사하십시오 그것은 명백하게 HTTP 요청을 위조하여 플래그를 쿼리하는 방법 이었기 때문입니다

비밀 경로를 사용하여 관리자 목록 항목에 액세스하는 방법을 알지 못합니다 나는 약간 writeups를 읽어야한다 나는 네가 그렇게 할 수 있기를 바란다

Shopping For Homeware With A Top Hong Kong Interior Designer

오늘 안녕하세요 매우 흥미 진진한 동영상이 있으니 잘 보내 주시면 이 물건을 좋아하기 때문에 나를 위해 흥미 진진하지만 오늘은 마침내 넣을거야

우리 집에 마지막으로 다가 갔다 두 달 전에 지금은 몰라하지만 꽤 최근에 네가 둘러 보면 흰색과 검정색과 회색의 빈 캔버스입니다

기본적으로 아주 추운 느낌입니다 왜냐하면 우리에게는 기억과 화병이있는 사진 프레임과 같은 개인적인 접촉이나 색체 꽃과 식물, 예술품으로 색이나 따뜻함이 전혀 없습니다 그리고 그것이 우리가 오늘 할 것 인 이것은 이것이 여행의 마지막 일부 다라고 오늘이다 내 의견은 가장 재미 있지만 그것은 또한 내가 오늘 최고가 아니라는 것입니다 나는 페기 벨즈 (Peggy Bels)라는 인테리어 디자이너와 그녀는 파리에있는 홍콩에서 여기에 기반을 둔 프랑스의 실내 디자이너입니다

그녀는 저와 함께이 아파트의 바닥에서 아파트와 함께하지 않았습니다 건물이지만 내 아파트는 모든 것을 디자인하는 데 도움을주었습니다 난 그녀를 사랑해 당신이 정말로 그녀의 특징과 물건을 볼 수 있기 때문에 네가 페기 벨즈의 일을 말해 줄 수있어 난 그저 그녀를 사랑해

비전과 그녀의 스타일은 내가 사랑하는 것, 내가 여기서하고 싶은 것 그래서 오늘 인테리어 디자인에 대해 더 많이 배우기를 바랍니다 나는 당신을 데려 가고 싶습니다 나와 함께하는 사람들은 오프라인에서 쇼핑 할 수있는 그녀의 좋아하는 장소를 볼 수 있습니다 온라인뿐만 아니라 그녀가 그것을 어떻게 그리고 어쩌면 그녀가 원하는 모든 팁이나 트릭 길을 따라 우리와 함께 나누십시오 나탈리? 오, 너 어디니? 오늘 흥분 되니? 아니

당신은 가정 장식을 좋아하니? 안된다고 했니? 정말?! 당신 네가 어떤 색깔도 원하지 않는다고 생각 했니? 아니, 나는 분명히 색채가 좋을거야 오 우리는 블루스가 될거야, 네 모자는 기본적으로 그리고 어쩌면 노란 것 같아 나의 혐오는 색의 팝이 아니다 그것은

당신은 색깔의 중립과 팝을 가지고 있고, 당신은 내 집을 대표합니다 좋아, 우리는 흥분한다 그녀의 말을 듣지 마라 놀라운 내 집을 만들거야 그래, 돈을 쓰는 돈을 지출 나는보고 사랑 테일러 돈을 지출 하지만 영원히 지속될 투자 작품이 될거야 제대로 할 방법을 배울거야

화병 등을 사러 갈 거라 생각했는데? 예하지만 화병은 고전적입니다 프랑스 여성과 갈 것이기 때문에 세련되고 고풍 스러울 것입니다 Horizon Plaza에는 Pottery Barn 같은 것들이 있습니다 우리는 3 곳으로 가고있어, 여기서 나가! 뭐, 3 군데? 삼! 어디에? 우리가 알아낼 수 있을지 모르겠다 계속 지켜봐라

너 나 말 듣고있어 그래서 지금 우리는 우리 첫번째 중지 인 Horizon Plaza에가는 도중에있다 우리가 페기를 만나는 곳과 지평선 플라자는 100 개가 넘는 모든 상점이있는 25 층짜리 공장 건물 다른 가구점의 종류 나탈리는 이것을 깨닫지 못했습니다 왜냐하면 그녀는 우리가 쇼핑몰에 갈 생각 이었지만 실제로는 쇼핑몰이 아니 었습니다 홍콩에서 가장 멋진 가구 매장 중 하나이기 때문에 지금은 흥분하고 있습니다

권리? 예 우리는 모두 선상에있다 안녕하세요 저는 Peggy Bels입니다 저는 실내 디자이너입니다 나는 홍콩에서 일해왔다

10 년 넘게 파리에서 공연 그것들은 정말 멋진 접시입니다 예, 식탁에 아주 좋을 것 같습니다 그것들은 아름답다 침대 끝까지 나중에 좋을거야 네이비 블루와 함께 있어도 괜찮 으면

나중에 나는 침실에서 남색을하고 게스트 침실에서 노란색으로 생각했다 아마도 그래, 그래

그래서 당신이 제일 먼저 결정한 것은 당신이하고 싶은 색깔입니다 하지만 최종 터치를 추가 할 때 예, 색상은 처음이지만 우리가 알고있는 당신의 장소는 파란색에서 파란색을 원합니다 황색은 우리가 찾고있는 색상이고 남색은 항상 매우 우아합니다 당신의 장소에 쿠션을 위해 나는 이불과 함께 4 개의 흰색 쿠션을 넣는 것을 좋아한다

흰색으로 덮고 그 위에 2 개의 강한 색을 넣으십시오 중에서 괜찮아 그래서 우리는 이것 2 개를 살 수있었습니다이 침실 중 하나는 침실 용이었습니다

다음 장식 트렌드를 예측하고 트렌드를 수행 할 수있는 방법이 있습니까? 와서 패션처럼가? 나중에 박람회에 가면 파리에 큰 박람회가있어 밀라노에서 페어에 가면 다음 트렌드를 볼 수 있습니다 하지만 기본적으로 몇 년 동안 거의 동일합니다 많은 벨벳, 대리석, 황동 에서 특정 장소에서 영감을 얻습니까? 나는 파리에 가서 큰 박람회에 가고 싶어합니다 연 2 명과 언론도 있습니다

그리고 Pinterest 맞지? 나는 너를 본다 때때로 Pinterest에 뿐만 아니라 Pinterest Pinterest 및 모든 언론 세계 곳곳에 잡지 같은 거요? 응, 내부 보도

좋아요 그래서 최신 정보를 유지하고 새로운 소식을 추측하고 있습니다 당신이 트렌드를 따라 가느냐, 아니면 붙잡습니까? 내가 거기에서 당신을 발견했을 때 눈치 챘기 때문에 오, 페기 벨스처럼 말할 수있는 특별한 특성입니다 나는 금속을 쓰고 싶다

나는 내 집에서 많은 금속을 사용했다 그래서 그것은 실제로 추세이거나 내가 따르는 어떤 것이 아니다 몇 년 동안 제가 정말 좋아하는 것입니다 그리고 만약 당신이 그것을 뭔가와 매치한다면 멋진 우아한 질감처럼 훨씬 더 우아 해 보입니다 많은 산업체와 시멘트는 추세와 비슷하다

저는 벽에 이런 종류의 패턴을 사용하기를 좋아합니다 그것은 평면에 뭔가를 추가합니다 예, 나는 우리와 함께 그것이 아니라는 것을 알아 차렸다 정말로 정확한 시멘트 모양, 그것은 매우 복잡합니다 그렇습니다

실제로 그것은 무언가를 추가합니다 그것은 장소에 특성을 준다 네 어떤 사람들은 그것이 아니라고 생각합니다 끝났지 만

그것은 우리가 찾고있는 것입니다 우리는 처음에는 혼란 스러웠습니다 우리가 좋아하는지 확실하지 않았습니다 그러면 더 많이 보게 될 것이고 실제로 집에 살고 싶을 때와 너는 감정을 느낀다

모든 벽은 다르며 모든 벽에는 다른 벽이 있습니다 패턴 그래서 그것은 우리가 찾고있는 것입니다 우리는 오늘과 집안을 찾고 있습니다 너무 독특합니다 정확히 그래

그리고 다른 이 모든 것들은 손수 만든 두 가지가 있어도 찾을 수 없으므로 모두 조금 있습니다 색상이 다릅니다 예, 그렇습니다 그래서 우리는 호두 색을보고 있습니다

너가 대리석을 밝게하기 때문에 너의 대리석에 두는 미국 호두 mm-hmm 그래서 나는 이런 종류의 더 어두운 호두를 선택한다 그것은 좋은 것입니다 좋은 경기 야 계속 뭐하고 있었 니? 뭔가 찾았 니? 아무 일도하지

너는 이것들을보고 있었고 말했다 "내 집에 하나 사려고" 당신이 지금 신자이기 때문에이 순간을 기록하고 싶습니다 당신을 바꿨습니다 나중에하지만 빵과 치즈 접시에 대해서만 우리 아직 끝나지 않았어

어디 보자 여기에 대리석은 없지만 우리는 그것을 대리석 위에 놓을 수 있습니다 화이트 하얀 커피 테이블 또는 섬의 정상에 그것은 매우있을 것입니다 멋진 흠, 너는 어떤 타입의 물건 일까? 이것들을 넣으시겠습니까? 심지어 아무것도

네가 깨끗하게 지키면 네가 할 수있어 당신이 다시 오면 괜찮아요, 예를 들어 열쇠를 넣으세요 당신이 섬에 그것을두면, 그것은 옆에있을 수 있고 그것을 매일 사용할 수 있습니다 그거야 매우 일본인들

왜냐하면 그들은 당신이 모든 것을 할 수있는 용기를 가지고 있기 때문입니다 예를 들어 카드를 가지고 지불하십시오 너는 항상 테이블 위에 놓을 물건이있어 너는 잘 할거야 이런 종류의 용기를 가져라 그래서 이것도 훌륭한 멋질 것입니다

슈퍼 무거운 나중에, 그것은 완벽 할 것이다 당신이 생각하는 것 중 가장 중요한 부분은 무엇입니까? 집? 한 지역에 돈을 투자해야한다면 욕조 조명, 소파? 그것은 부엌 일 것입니다 내가 열어 놓고 싶어하는 부엌 예 부엌은 거실에서 열리고 나는 그것을 거실의 일부로 만들고 싶어

그것은 단지 매우 세련된 모양입니다 나는 결코 냉장고를 보여주지 않는다 그래서 내 냉장고를 숨 겼어 나는 항상 냉장고를 숨 깁니다 멋진 상단에 내장 된 냉장고 자연석에 항상 돌로있어

괜찮아 나를 위해 가장 중요한 부분입니다 부엌, 테라스 또는 옥상 예 그것은 중요한 것입니다 음, 그건 사실이야 가장 많은 시간을 보내고 사람들이 올 때 그것이 당신이 모이는 곳입니다

나중에 모든 것 물론 중요합니다 이것은 카운터 탑에서도 정말 좋을 것입니다 어떤 과일을 넣으려면 매일 사용하지 마시고 언젠가는 내놓을 수 있습니다 그것을 안으로 데려 오케이 그리고 당신이 할 때 당신은 내가 좋아하는 하나의 특정 색상이 필요해 칼다 시아 인을보십시오, 예를 들면 단지 레몬을 넣는 것입니다

그들은 노란색의 팝업을 원한다 예 과일 톤을 두지 마시오 예 물론 몇 가지 과일을 넣어 더 실용적이지만 네, 그냥 레몬 좋은 것입니다 이 컬렉션은 화장실에 아주 좋을거야 약간의 놋쇠도 가장자리에 붙어 있습니다

그리고 일치하는 상자가 있습니다 상자가있는이 하나가 욕실에 좋을거야 또는 당신의 메이크업 테이블 이 불빛은 너무 차갑습니다 그래서이 가게가 정말 마음에 들어요 건물의 더 특별한 곳

그들은 호두와 벨벳 및 황동의 좋은 혼합을했습니다 네,이게 실제로 남편이 좋아하는 것처럼 보입니다 완전한 그것은 약간의 빈티지, 조금 60 년대 / 70 년대 나는 이것을 사용하는 것을 좋아한다

귀하가 가장 좋아하는 가정 용품을 판매하는 온라인 상점이 무엇이라고 말합니까? 국제적으로? 먼저 접시에 파리에 멋진 가게가 하나 있습니다 그것은 아주 빨리 홍콩에 배달 할 수 있습니다 세븐 일곱 파리는 아주 훌륭합니다 도자기, 모든 수제, 모두 파리에서 만들어 아름답고 매우 우아한 컷 양초에 나는 가게, 프랑스 샵을 이용하고 그들은 홍콩에 배달한다 며칠 동안 매우 편리하고 Premiereavenue

com과 냄새가 너무 좋고 금속 상자와 같은 냄새를 풍기지만 냄새가 좋기 때문에 멋지 네요 아주 좋은 냄새가 검은 돌 백인 회사를 좋아하니? 모든 침대 시트 꽤 복잡한 침대 시트를 찾기도하고 큰 침대도 있기 때문입니다 홍콩의 고전적인 흰색 크기 나는 항상 약간의 파이핑으로 흰색을 좋아합니다 매우 간단하지만 소재가 아주 멋지다

조명을 위해 영국의 Bert / Frank 또는 영국의 Gong에서 좋아요 좋습니다 감사합니다 대단히 많은 나무 조각이 있습니다! 나중에 좋아! 이것과 다른 것을 볼 수 있습니다 나는 사진 찍고 싶어

이거 정말 귀엽다 그래서 오늘의 요점은 높고 낮은 오른쪽을 섞고 있습니다 최고점? 제로 그래, Crawford 차선에서 보자 그렇지 않을지도 모른다 그럼 우리는 H & M 집에 갈거야

그러면 너는 우리에게 어떻게 만들어야하는지 가르쳐 줄거야 뭔가 예산에 정말 좋아 보인다 예 몇 가지 요점을 추가하는 방법 실제로 몇 가지 물건으로 뭔가를 멋지게 만들 수 있습니다 당신은 그들이 몇 가지 놀라운 화병을 언급했다 그건 정말 비싸 보입니다

꽃병, 방석, 던지기, 액세서리, 당신은 충분히 가지고 있습니다 H & M 집이나 Zara와 같은 것들에 갈 때 나는 무엇이든 보았습니다 창문에 있고 그 모든 물건을 사서 집에서 다시 해 내가 함께 사물을 조각하는 법을 알지 못하기 때문에 나는 그것에 질 렸어 한번에 너무 많아서 뭔가 새로운 것을 원해요

정말 효과가있는 항목 H & M에서 쇼핑하는 방법을 알려 드리겠습니다 H & M에서 쇼핑하는 방법을 보여주세요 하지만 나는 Zara보다 H & M을 더 좋아한다 가정용

작은 공간을 크게 보이게하는 방법에 대해 많은 질문이 있습니까? 어떤 팁? 나는 홍콩에서 많은 공간을 차지한다 왜냐하면 홍콩 에선 큰 평면이 아니기 때문에 저는 300 평방 피트 350 평방 피트 플랫 네 당신은 침실을 열려고하는 1 베드룸 플랫처럼 만들 수 있습니다 그리고 슬라이딩 창문이나 일종의 아틀리에 창문과 같은 생활

네가 객실을 위해했던 것처럼 나중에 너 정말로 벽이 싫어 빛이 통과 할 수 있도록 최소한의 공간이 있어야합니다 빛은 평면을 통과 할 수 있고 그것은 당신이 그것을 사용할 수있는 훨씬 더 큰 삶을 살 수 있습니다

sofa와 침대는 각각 직면하고 있습니다 다른 것 그리고 전체 공간을 훨씬 더 크게 만든다 mm-hmm 물론 오픈 키친 모든 것이 함께 열리므로 공간 최대를 열어야합니다 그렇지 않습니다 너무 많은 가구를 사용하고, 액세서리에 대해 더 많은 것을 시도합니다 그래서 하나의 멋진 소파 커피 테이블 항상 공간을 표시하기 위해 깔개를 사용하십시오 거실은 항상 홍콩에서는 저장 공간을 찾기가 어렵 기 때문에 저장 팁은 무엇인가요? 항상 아래의 창고로 침대를 만드십시오

이 제품은 실제로 잘 작동합니다 수납 공간이 2 미터이므로 160 그 수트를 넣을 수 있습니다 우리는 우리 마지막 중지까지 그것을 만들었다 오, 너무 비어 있습니다 이 가게에는 아무도 없으니 좋습니다 심지어 밤에 저녁을 먹는다면 당신이 샀던 그레이 플레이트가있는 테이블을 올려 놓으십시오

검은 촛불로이 높이의 약간 다른 높이처럼, 그것은 매우 멋질 것이다 이건 이거 든, 이거 든, 둘 다 당신을 위해 아주 잘 갈 것입니다 이 꽃병 I 정말 좋아! 이것은 좋은 것입니다

꽤예요이게 얼마나 드뭅니 까? HKD $ 200 나는이 핑크색을 정말 좋아한다 너의 장식도 매우 남성적이다 객실에서 핑크 톤을 사용하는 것을 두려워하지 않으므로 두 개를 넣을 수 있습니다 하얀 침대 시트에 그처럼 4 개의 베개가 흰색과 2 개의 베개가 있습니다

담홍색 이것은 좋은 것입니다 담요도 핑크색이 될까요? 우리가 뭘 찾을 수 있는지 보자 우리는 심지어 회색으로 섞을 수도 있습니다 또 다른 나탈리의 구매로 그녀는 다른 것을 얻었습니다

나는 예산의 종류의 내부의 I 'm 다 나도 사랑해 이거 정말 귀엽다 객실의 핑크색은 이걸 사용하겠습니다 액세서리로 They'r 정말로 멋지다

정말 멋지다! 큰 작은 것이있다 오, 그거 정말 좋아요이 때문에 팔렸어요 멋진 검은 색 판이 있습니다 하지만 이건 수작업이지만이 가격은 이 하나는 정상적인 가격이지만이 하나는 매우 싸고,이 제품은 H & M에 비해 훨씬 비쌉니다

이것은 단지 30 홍콩 달러입니다 이 그릇도 너무 귀엽다 그들은 무거워 그래, 모든 게 회색이고 너는 이걸 가지고 있고, 흰건 하나, 그리고 2 쿠션, 그것은 좋아 보인다 하지만이 분홍색이 아니라이 부분을 숨기려고 노력하지 마라

어둠의 단지 빛을 보여라 우리가 가지고있는 것들을 세우는 것만으로 나와 함께 집으로 가져 갔다 뭔가 가져 왔니? 너의 공간도 멋지게 만들거야! 이건 로지를위한거야

너는 그것을 좋아하니?

What is PHP and why is XSS so common there? – web 0x02

마지막 2 개의 에피소드에서 우리는 정적 html과 http 프로토콜이 사용되는 방법을 살펴 보았습니다 웹 서버에서 파일을 가져올 수 있습니다

이 비디오에서는 프로그래밍 언어 인 php를 소개합니다 동적 웹 사이트 마지막 비디오의 끝에서 나는 php 튜토리얼을위한 google search를했고 매우 화가났다 그래서 여기 왜 프로그래밍을 시작하고 PHP에 대해 배우고 싶을 때 나는 인터넷 검색을 시작합니다 나는 튜토리얼을 찾는다 이 같은 그리고 그것은 매우 신뢰할만한 것처럼 보입니다

하지만 이것은 하나의 너무 많은 다른 PHP 튜토리얼 너무 많은 안전하지 않은 PHP 웹 사이트에 대한 책임입니다 나쁜 PHP 개발자 나는 왜 당신에게 보여줍니다 이 예제 코드를 "form_getphp"라는 새 파일에 복사 해 봅시다 이 파일을 간단히 살펴 보겠습니다

여기 아래에 우리가 이미 알고있는 html 코드가 있습니다 입력 요소가있는 양식 태그가 있습니다 아마도 이름과 나이를 입력하십시오 이 양식의 메소드는 GET입니다 나중에 그 의미를 알 수 있습니다

하지만 맨 위에는 이상한 문항 PHP 태그가 있습니다 여기는 또 다른 물음표로 끝납니다 그리고 내부에는 html처럼 보이지 않는 것들이 있습니다 음, 이것은 PHP 코드입니다 그래서 PHP 코드는 html과 섞일 수 있습니다

이것이 웹 서버에서로드 된 사이트에 어떤 영향을 미치는지 보도록하겠습니다 우리는 우리의 PHP 간단한 웹 서버를 PHP – S로 다시 사용합니다 그리고이 사이트 form_getphp를 방문하면, 우리는 두 개의 입력 텍스트 요소로 폼을 볼 수 있습니다 이제 HTML 소스 코드를 살펴 보겠습니다

Rightclick – 페이지 소스보기 이것은 브라우저가이 파일을 요청했을 때 서버로부터받은 원시 html 코드입니다 허 Ok HTML 코드가 있습니다 하지만 우리 HTML 코드 이전의 php는 어디에 있습니까? 음, 우리가이 파일을 요청했을 때, PHP 프로그램은 파일을 읽고 임베디드 PHP 코드

그리고이 임베디드 PHP 코드는 결코 응답의 일부가 아니며 항상 제거됩니다 하지만 PHP 코드는 응답을 수정할 수 있습니다 그러나 성명과 연령 또는 성명을 설정해야만 발견 할 수 있습니다 그 에코에 도달하십시오 아무것도하지 않습니다

이제 네트워크 탭을 사용하여 개발자 도구를 열고이 항목에 뭔가를 입력하십시오 양식을 작성하고 제출을 누르면 페이지로드가 다시 표시됩니다 브라우저 URL 표시 줄뿐 아니라 파일 이름을 보면 이제 파일 이름이 추가 된 것을 볼 수 있습니다 그것에 약간 재료를 가진 물음표 이는 다시 URL 구성 방법의 일부입니다

도메인이나 주소 뒤에 파일 경로가 있습니다 그러나 어떤 지점에서 물음표가 나면 파일 이름은 완성되고 다른 파일 이름은 완성됩니다 URL의 일부가 시작됩니다 이른바 GET 변수입니다 따라서 GET 변수는 항상 URL의 일부입니다

키 – 값 쌍이라는 것을 알 수 있습니다 이름은 LiveOverflow이고 나이는 12이며, 그들은 apersand에 의해 spererated됩니다 따라서 동일한 파일 인 form_getphp를로드하더라도 응답은 완전히 다릅니다 더 이상 텍스트 상자 없음

우리가 소스 코드를 보더라도 html이 남아 있지 않습니다 그래서 원래의 PHP 파일에서 우리는 지금 볼 수 있습니다 이번에는 PHP 블록이 더 흥미 롭습니다

코드의 첫 번째 줄은 GET 변수 이름 또는 GET 변수가 있는지 확인하는 것입니다 사실입니다 이제 URL에있는 사람들이 있습니다 그리고 그 경우라면 우리는 GET을 추가하는 문자열 "welcome"을 echo합니다 변수 이름

PHP에서는 문자열을 점으로 연결하거나 추가합니다 그 이름 뒤에 html의 개행 문자 인 br 태그가 나온다 다음 줄의 echo는 "You are"를 출력하고, GET 변수 age와 appends를 출력합니다 "세 살"이에요 우리가 지금보고있는 바로 그 것입니다

그리고 우리가이 PHP 블록 이후 html을 보지 못하는 이유는, 이것은 exit () 호출이라면 기본적으로 PHP 실행을 여기서 멈추라는 의미입니다 여기 결코 HTML에 도달하지 않습니다 그래서이 PHP 코드를 실행하고 그 변수를 울렸다 우리는 종종이 행동을 "반영된"이라고 지칭합니다 거울처럼, 우리가 던진 것을 돌려 줄 것입니다

따라서이 경우 LiveOverflow와 숫자 12를 웹 서버에 던지고 웹 서버 정확히 그 문자열로 응답했다 이제이 코드가 왜 그렇게 엿 같은가? 누가 html 태그를 삽입하지 못하게합니까? 천천히 시작합시다 마지막 2 개의 에피소드에서 우리는 정적 html과 http 프로토콜이 사용되는 방법을 살펴 보았습니다 웹 서버에서 파일을 가져올 수 있습니다 이 비디오에서는 프로그래밍 동적 웹 사이트를 만드는 데 사용할 수있는 언어 PHP입니다

마지막 비디오의 끝에서 나는 php 튜토리얼을위한 google search를했고 매우 화가났다 그래서 여기에 이유는 프로그래밍을 시작하고 배우고 싶을 때 PHP에 대해서, 나는 인터넷 검색을 시작한다

나는 튜토리얼을 찾는다 이 같은 그리고 그것은 매우 신뢰할만한 것처럼 보입니다 하지만 이것은 하나의 너무 많은 다른 PHP 튜토리얼 너무 많은 안전하지 않은 PHP 웹 사이트에 대한 책임입니다 나쁜 PHP 개발자 나는 왜 당신에게 보여줍니다

이 예제 코드를 "form_getphp"라는 새 파일에 복사 해 봅시다 이 파일을 간단히 살펴 보겠습니다 여기 아래에 이미 우리가 가지고있는 html 코드가 있습니다 알고있다

입력 요소가있는 양식 태그가 있습니다 아마도 이름과 나이를 입력하십시오 이 양식의 메소드는 GET입니다 나중에 그 의미를 알 수 있습니다 하지만 맨 위에는 이 이상한 여는 ​​questionmark PHP 태그

여기는 또 다른 물음표로 끝납니다 그리고 내부에는 html처럼 보이지 않는 것들이 있습니다 음, 이것은 PHP 코드입니다 그래서 PHP 코드는 html과 섞일 수 있습니다 이게 어떻게되는지 보자

웹 서버에서로드 된 사이트에 영향을줍니다 우리는 PHP와 함께 우리의 PHP 간단한 웹 서버를 사용합니다 – S 다시이 사이트 form_getphp를 방문하면 두 입력 텍스트가있는 양식을 볼 수 있습니다 집단 이제 HTML 소스를 살펴 보겠습니다 코드

Rightclick – 페이지 소스보기 브라우저에서받은 원시 html 코드입니다 이 파일을 요청할 때 서버에서 허 Ok HTML 코드가 있습니다

하지만 우리 HTML 코드 이전의 php는 어디에 있습니까? 음, 우리가이 파일을 요청했을 때, PHP 프로그램은 파일을 읽고 임베디드 PHP 코드 그리고이 임베디드 PHP 코드는 결코 응답의 일부가 아니며 항상 제거됩니다 하지만 PHP 코드는 응답을 수정할 수 있습니다 그러나이 if 문을 발견했습니다 그 에코에 도달 할 수 있도록 이름이나 나이를 설정해야합니다

아무것도하지 않습니다 이제 네트워크 탭을 사용하여 개발자 도구를 열고이 항목에 뭔가를 입력하십시오 양식을 작성하고 제출을 누르면 페이지로드가 다시 표시됩니다 브라우저 URL 표시 줄뿐 아니라 파일 이름을 보면 이제 파일 이름이 추가 된 것을 볼 수 있습니다 그것에 약간 재료를 가진 물음표

이는 다시 URL 구성 방법의 일부입니다 도메인이나 주소 뒤에 파일 경로가 있습니다 그러나 우리가 물음표에 도달하면 어떤 시점에서 파일 이름이 완성되고 URL의 다른 부분이 시작됩니다 소위 GET 변수 따라서 GET 변수는 항상 URL의 일부입니다

그리고 너는 볼 수있다 그것들은 키 – 값 쌍입니다 이름은 LiveOverflow이며 연령은 12입니다 어웨이 그래서 우리가 같은 파일을 로딩하더라도, form_get

php, 응답이 completly 다르다, 더 이상 텍스트 상자가 없다 우리가 보더라도 소스 코드, 남아있는 HTML이 없습니다 그래서 우리는 지금 볼 수있는 원래의 PHP 파일에서, 이번에는 PHP 블록이 더 흥미 롭습니다

코드의 첫 번째 줄은 GET 변수 이름이거나 GET 변수입니다 사실입니다 이제 URL에있는 사람들이 있습니다 그리고 그 경우라면 우리는 GET을 추가하는 문자열 "welcome"을 echo합니다 변수 이름

PHP에서는 문자열을 점으로 연결하거나 추가합니다 이름이 오면 html의 개행 문자 인 br 태그 에코의 다음 행은 "당신"이고, GET 가변 연령에 따라 "years old"를 추가합니다 우리가 정확히 무엇인지 응답에서 지금 보는 우리가 html을 보지 못하는 이유 이 PHP 블록이 끝나면 this 내부는 exit () 호출이기 때문에 기본적으로 의미 – 바로 여기서 PHP 실행을 중지하십시오 여기 결코 HTML에 도달하지 않습니다

그래서이 PHP 코드를 실행하고 그 변수를 울렸다 우리는 종종이 행동을 "반영된"이라고 지칭합니다 거울처럼, 우리가 던진 것을 돌려 줄 것입니다 그래서이 경우 우리는 LiveOverflow를 던집니다 웹 서버에서 12라는 번호를 사용하면 웹 서버는 정확히 해당 문자열로 응답합니다

이제이 코드가 왜 그렇게 엿 같은가? 누가 html 태그를 삽입하지 못하게합니까? 천천히 시작합시다 일부 텍스트를 굵게 인쇄해야하는 ab 태그를 입력 해 보겠습니다 그리고 언제 우리는 양식을 제출, 작동합니다 이제 뭔가를 인쇄해도 아무런 해가 없다고 주장 할 수 있습니다 대담한

이 웹 사이트의 사용자를위한 맞춤 설정을위한 좋은 기능입니다 맞습니까? 이 점을 고려하면 원하는 HTML을 모두 주입 할 수 있습니다 내가 completly 할 수 있다는 것을 의미한다 가짜 사이트의 내용 아, URL에 직접 문자열을 쓸 수 있습니다 양식을 검토 할 필요가 없습니다 매번 그것은 GET 매개 변수가 작동하는 방법입니다

그래서 나는 가짜 뉴스 기사를 삽입 할 수있다 이제이 URL을 가져다가 알 수없는 상태로 보낼 수 있습니다 비 기술적 인 사용자 그리고 신뢰할 수있는 웹 사이트에서 기부하도록 요청했을 때, 그들은 그것을 할 수도 있습니다 많은 피싱 메일과 같은 가짜 도메인에도 속하지 않습니다

켜졌 어 실제 도메인, 가짜 콘텐츠에이 주사를 사용합니다 이것은 매우 신뢰할 만하다 피싱 공격에 효율적입니다 이제는 이미 멋지지만, 자바 스크립트 삽입? 당신은 자바 스크립트가 HTML을 조작 할 수 있다는 것도 알고 있지만 또한 할 수있다 그 이상

자바 스크립트로 할 수있는 것을 쉽게 보여줄 수 있습니다 이 공격을 시뮬레이션하면 예를 들어 reddit 이론적으로 특별한 방법으로 자바 스크립트를 실행하는 방법을 발견했다고 가정 해 보겠습니다 이전에 우리의 엿 같은 PHP 예제와 같은 URL 그냥 명확하게하기 위해 reddit은 취약하지 않습니다

이 일은 일어날 수있는 일을 시뮬레이션하는 것입니다 개발자 도구를 연 다음 자바 스크립트 콘솔 왜냐하면 여기서는 실행중인 것처럼 자바 스크립트를 작성할 수 있기 때문에 사이트의 자바 스크립트 그래서 나는 첫번째 이야기를 upvotes 코드 줄을 쓸 수 여기에서 upvote 버튼을 클릭하여 시뮬레이션합니다 그리고 만약 내가 내 upvotes 내가 분명히 확인 이 이상한 실을 여기에서 upvoted

이제 내가 실행할 수있는 URL이 있다고 상상해보십시오 이 줄과 upvote 내 게시물, 지금 나는 그것으로 많은 사용자를 스팸, 그들은 그것을 클릭하고 그들 없이는 그것을 upvote 그리고 이론적으로 저는 이제 private을 보내는 코드를 작성할 수 있습니다 악의적 인 URL이 포함 된 임의의 다른 사용자에게 보내는 메시지 따라서 자바 스크립트 웜을 생성합니다 그래서 나는 이것이 공격자가 제어하는 ​​자바 스크립트 실행이 정말로 정말 나빴어

이제 문제는 자바 스크립트를 삽입 할 수 있는가하는 것입니다 우리의 예제 PHP 페이지에? 실행하는 스크립트 태그를 삽입 해 봅시다 경보 경고가 팝업으로 표시되기 때문에 시각적 인 증거가 될 수 있습니다 자바 스크립트를 실행하십시오

그래서 이것을 이름으로 입력하고 어떻게되는지 봅시다 Mh 팝업이 없습니다 그리고 콘솔은 예외를 던졌습니다 XSS 감사인이 스크립트 실행을 거부했습니다

in blah blah 요청 내에서 소스 코드가 발견되었습니다 크롬 XSS 감사인은 크로스 사이트 스크립팅을 막으려 고합니다 짧은 XSS 공격, 즉 스크립트를 웹 페이지에 주입하는 것을 의미합니다 그래서 분명히 우리는 크롬으로 인해 자바 스크립트를 실행할 수 없습니다

페이지의 소스 코드를 확인하는 경우 빨간색으로 강조 표시된 위반 스크립트 부분을 볼 수도 있습니다 그래서 크롬 요청에서이 자바 스크립트 소스 코드,이 경고를 발견했다 사실 그것은 여기 GET 매개 변수로 URL에 제기랄 우리 공격은 실패했습니다

이 모양 같아 페이지는 afterall 안전합니다 나는 그렇게 엿 같은 PHP 같지 않니? Weelll 이것은 이야기의 절반에 불과합니다 이 경우 실제로는 매우 쉽습니다 자바 스크립트가 실행되도록 XSS 감사자를 건너 뜁니다 그러나 당신은 그것을 알아 내야 할 것입니다 너 자신이나 다음 비디오를 기다려

그러나이 비디오를 끝내기 전에이 문제를 올바르게 해결하는 방법에 대해 신속히 이야기합시다 여기에있는 키워드는 "탈출"합니다 우리는 에코하기 전에 사용자가 입력 한 것을 벗어나야합니다 또는 페이지에 반영하십시오 이 경우 에코의 출력은 다음과 같습니다

html의 맥락에서 출력은 내부에 배치 될 수 있기 때문에 특별히 언급합니다 HTML 태그 속성 또는 스크립트 태그 내부 그것들은 모두 다른 컨텍스트입니다 그들 자신의 도전을 가져라 그러나이 경우 가장 기본적인 예제입니다

– 그냥 HTML 코드에 에코 이렇게 우리가 도주하고 싶으면 이것을 막기 위하여, 더 큰 부호와 같은 특별한 html 특성, 그래서 우리는 새로운 html 꼬리표를 주사 할 수 없다 PHP 함수는`htmlspecialchars`입니다 전에 _GET 변수를 사용한다면 우리는 그것을 에코합니다 그러면 우리는 html이나 스크립트 태그를 더 이상 삽입 할 수 없습니다

당신이 그것을 시도한다면 이제 보게 될 양식에 대신 더 큼 기호가 표시됩니다 그리고 그 이유는 왜냐하면 우리가 html 소스 코드를 살펴보면 더 큰 부호 캐릭터가 "apercant, gt, greater than 및 semicolon"으로 바뀌 었습니다 이제 특별한 HTML 코드입니다 태그가 아니 어서 더 이상 렌더링되지 않습니다 페이지가 우리에게 표시 될 때 더 큰 부호

이것은 우리의 생산물을 완전히 안전하게 만들고 있습니다 아니면 하지? 이것은 대부분 사실입니다

그리고 나는 이것을 할 수있는 것처럼 들리게하고 싶지 않다 쉽게 우회 할 수는 있지만, 더 이상 사실이 아닐 수도있는 몇 가지 중요한 경우가 있습니다 앵글 js 샌드 박스 이스케이프에 대한 좀 더 고급스러운 시리즈를 간략히 살펴보십시오 곧이 웹 시리즈와 동시에 발표 될 것입니다

Regeneracja filtra DPF FAP Citroen C5 1.6 PHP 155 KM 2011 R

오늘 2011 년 155 마력의 16 PHP 엔진을 장착 한 Citroen C5 엔진의 DPF 디젤 미립자 필터가 우리 공장에 왔습니다

우리의 재생 워크샵은 최신 가능한 기술과 전문 장비만을 사용합니다 우리는 습식 및 건식 DPF FAP 미립자 필터 및 자동차 촉매의 재생을 처리합니다 전화 725 803 803으로 문의하십시오 우리는 또한 당신이 우리의 웹 사이트를 방문하도록 초대합니다 : http://wwwfiltry-dpf-fap

pl