{"id":38822,"date":"2019-10-31T22:26:11","date_gmt":"2019-10-31T19:26:11","guid":{"rendered":"https:\/\/prohoster.info\/blog\/reshenie-zadaniya-s-pwnable-kr-25-otp-ogranichenie-ramera-fajla-v-linux\/"},"modified":"2019-10-31T22:26:11","modified_gmt":"2019-10-31T19:26:11","slug":"reshenie-zadaniya-s-pwnable-kr-25-otp-ogranichenie-ramera-fajla-v-linux","status":"publish","type":"post","link":"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/reshenie-zadaniya-s-pwnable-kr-25-otp-ogranichenie-ramera-fajla-v-linux","title":{"rendered":"L\u00f8sning af opgaven fra pwnable.kr 25 \u2014 otp. Filst\u00f8rrelsesbegr\u00e6nsning i Linux","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"L\u00f8sning af opgaven fra pwnable.kr 25 \u2014 otp. Filst\u00f8rrelsesbegr\u00e6nsning i Linux\" src=\"\/wp-content\/uploads\/2019\/10\/70434b41e923b3b46bcdff1ab7e03937.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nI denne artikel l\u00f8ser vi opgave 25 fra hjemmesiden <noindex><a rel=\"nofollow\" href=\"https:\/\/pwnable.kr\/index.php\">pwnable.kr<\/a><\/noindex>.<\/p>\n<p><b class=\"spoiler_title\">Organisatorisk information<\/b>Specielt til dem, der \u00f8nsker at l\u00e6re noget nyt og udvikle sig inden for informations- og computersikkerhed, vil jeg skrive og fort\u00e6lle om f\u00f8lgende kategorier:<\/p>\n<ul>\n<li>PWN;<\/li>\n<li>kryptografi (Crypto);<\/li>\n<li>netv\u00e6rksteknologier (Network);<\/li>\n<li>reverse engineering (Reverse Engineering);<\/li>\n<li>steganografi (Stegano);<\/li>\n<li>s\u00f8gning og udnyttelse af web-s\u00e5rbarheder.<\/li>\n<\/ul>\n<p>\nDerudover vil jeg dele min erfaring inden for computerkriminalistik, malware-analyse og firmware, angreb p\u00e5 tr\u00e5dl\u00f8se netv\u00e6rk og lokale netv\u00e6rk, udf\u00f8relse af pentests og udarbejdelse af exploits.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nFor at du kan f\u00e5 oplysninger om nye artikler, software og anden information, har jeg oprettet <noindex><a rel=\"nofollow\" href=\"https:\/\/t.me\/RalfHackerChannel\">en kanal p\u00e5 Telegram<\/a><\/noindex> og <noindex><a rel=\"nofollow\" href=\"https:\/\/t.me\/RalfHackerPublicChat\">en gruppe til diskussion af eventuelle sp\u00f8rgsm\u00e5l<\/a><\/noindex> inden for IuKBS. Dine personlige anmodninger, sp\u00f8rgsm\u00e5l, forslag og anbefalinger <noindex><a rel=\"nofollow\" href=\"https:\/\/t.me\/hackerralf8\">vil jeg se p\u00e5 personligt og svare alle<\/a><\/noindex>.<\/p>\n<p>Al information pr\u00e6senteres udelukkende med uddannelsesm\u00e6ssige form\u00e5l. Forfatteren af dette dokument p\u00e5tager sig intet ansvar for eventuelle skader, der m\u00e5tte opst\u00e5 som f\u00f8lge af anvendelsen af de viden og metoder, der opn\u00e5s ved at studere dette dokument.<\/p>\n<h2>L\u00f8sningen p\u00e5 opgaven otp<\/h2>\n<p>\nVi forts\u00e6tter med anden sektion. Jeg vil sige med det samme, at den er sv\u00e6rere end den f\u00f8rste, men denne gang giver de os ikke kildekoden til programmet. Glem ikke diskussionen her (https:\/\/t.me\/RalfHackerPublicChat) og her (https:\/\/t.me\/RalfHackerChannel). Lad os komme i gang.<\/p>\n<p>Vi klikker p\u00e5 ikonet m\u00e6rket otp. Vi f\u00e5r en adresse og en port til at forbinde.<\/p>\n<p><img decoding=\"async\" alt=\"L\u00f8sning af opgaven fra pwnable.kr 25 \u2014 otp. Filst\u00f8rrelsesbegr\u00e6nsning i Linux\" src=\"\/wp-content\/uploads\/2019\/10\/fec98a1c755c36ba1a7117bfc5154611.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nVi forbinder og unders\u00f8ger serveren.<\/p>\n<p><img decoding=\"async\" alt=\"L\u00f8sning af opgaven fra pwnable.kr 25 \u2014 otp. Filst\u00f8rrelsesbegr\u00e6nsning i Linux\" src=\"\/wp-content\/uploads\/2019\/10\/71983f5701fe2b1366cebfb0d2d57f74.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nFlaget, som vi ikke kan l\u00e6se, programmet og dets kildekode. Lad os se p\u00e5 kildekoden.<\/p>\n<p><img decoding=\"async\" alt=\"L\u00f8sning af opgaven fra pwnable.kr 25 \u2014 otp. Filst\u00f8rrelsesbegr\u00e6nsning i Linux\" src=\"\/wp-content\/uploads\/2019\/10\/63e409cd939f41db29ee5c1edfa107a0.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nVi analyserer den. Programmet modtager et password som argument.<\/p>\n<p><img decoding=\"async\" alt=\"L\u00f8sning af opgaven fra pwnable.kr 25 \u2014 otp. Filst\u00f8rrelsesbegr\u00e6nsning i Linux\" src=\"\/wp-content\/uploads\/2019\/10\/5eb6bccb7ed4b82fdd01e24854c2c953.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDerefter gemmes 16 tilf\u00e6ldige bytes i variablen otp.<\/p>\n<p><img decoding=\"async\" alt=\"L\u00f8sning af opgaven fra pwnable.kr 25 \u2014 otp. Filst\u00f8rrelsesbegr\u00e6nsning i Linux\" src=\"\/wp-content\/uploads\/2019\/10\/c1420a16c9721a8c87fb86277674f0f2.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nI mappen tmp oprettes en fil med et tilf\u00e6ldigt navn (de f\u00f8rste 8 bytes af otp) og der skrives 8 tilf\u00e6ldige bytes (de sidste 8 bytes af otp) ind i den.<\/p>\n<p><img decoding=\"async\" alt=\"L\u00f8sning af opgaven fra pwnable.kr 25 \u2014 otp. Filst\u00f8rrelsesbegr\u00e6nsning i Linux\" src=\"\/wp-content\/uploads\/2019\/10\/d6fcc612f6cddbff338fff0aaf9b73a1.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nAf en eller anden grund l\u00e6ses v\u00e6rdien fra den oprettede fil og sammenlignes med det indtastede password.<\/p>\n<p><img decoding=\"async\" alt=\"L\u00f8sning af opgaven fra pwnable.kr 25 \u2014 otp. Filst\u00f8rrelsesbegr\u00e6nsning i Linux\" src=\"\/wp-content\/uploads\/2019\/10\/42302a748b7cd57a6337be00eab2c47b.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nHer findes s\u00e5rbarheden. Den best\u00e5r i den midlertidige lagring af det genererede nummer i filen. Vi kan begr\u00e6nse filens st\u00f8rrelse, for eksempel til 0, s\u00e5 n\u00e5r der skrives og l\u00e6ses med passwordet, vil der blive sammenlignet 0. Dette kan g\u00f8res s\u00e5dan.<\/p>\n<pre><code class=\"bash\"># ulimit -f 0<\/code><\/pre>\n<p>\n<img decoding=\"async\" alt=\"L\u00f8sning af opgaven fra pwnable.kr 25 \u2014 otp. Filst\u00f8rrelsesbegr\u00e6nsning i Linux\" src=\"\/wp-content\/uploads\/2019\/10\/3af83c20d1de7435b0f40a36c8187ff0.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nLad os nu k\u00f8re programmet.<\/p>\n<p><img decoding=\"async\" alt=\"L\u00f8sning af opgaven fra pwnable.kr 25 \u2014 otp. Filst\u00f8rrelsesbegr\u00e6nsning i Linux\" src=\"\/wp-content\/uploads\/2019\/10\/a289bd59a22aa495fe6407c3c8ff0416.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nVi f\u00e5r en fejl. Ikke noget problem, det kan h\u00e5ndteres med samme python.<\/p>\n<pre><code class=\"python\">python -c \"import os, signal; signal.signal(signal.SIGXFSZ, signal.SIG_IGN); os.system('.\/otp 0')\" <\/code><\/pre>\n<p>\n<img decoding=\"async\" alt=\"L\u00f8sning af opgaven fra pwnable.kr 25 \u2014 otp. Filst\u00f8rrelsesbegr\u00e6nsning i Linux\" src=\"\/wp-content\/uploads\/2019\/10\/b8513f020879d5e5ee957e1bc137b61a.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nVi f\u00e5r flaget og nemme 100 point. Og vi forts\u00e6tter: i n\u00e6ste artikel vil vi ber\u00f8re Web. Du kan slutte dig til os i <noindex><a rel=\"nofollow\" href=\"https:\/\/t.me\/RalfHackerChannel\">Telegram<\/a><\/noindex>.<br \/>\n<br \/>Kilde: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/471042\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412 \u0434\u0430\u043d\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u0440\u0435\u0448\u0438\u043c 25-\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435 \u0441 \u0441\u0430\u0439\u0442\u0430 pwnable.kr. \u041e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f\u0421\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0434\u043b\u044f \u0442\u0435\u0445, \u043a\u0442\u043e \u0445\u043e\u0447\u0435\u0442 \u0443\u0437\u043d\u0430\u0432\u0430\u0442\u044c \u0447\u0442\u043e-\u0442\u043e \u043d\u043e\u0432\u043e\u0435 \u0438 \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u0432 \u043b\u044e\u0431\u043e\u0439 \u0438\u0437 \u0441\u0444\u0435\u0440 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0438 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043d\u043e\u0439 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438, \u044f \u0431\u0443\u0434\u0443 \u043f\u0438\u0441\u0430\u0442\u044c \u0438 \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u044f\u0445: PWN; \u043a\u0440\u0438\u043f\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u044f (Crypto); c\u0435\u0442\u0435\u0432\u044b\u0435 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438 (Network); \u0440\u0435\u0432\u0435\u0440\u0441 (Reverse Engineering); \u0441\u0442\u0435\u0433\u0430\u043d\u043e\u0433\u0440\u0430\u0444\u0438\u044f (Stegano); \u043f\u043e\u0438\u0441\u043a \u0438 \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u044f WEB-\u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0435\u0439. \u0412\u0434\u043e\u0431\u0430\u0432\u043e\u043a \u043a \u044d\u0442\u043e\u043c\u0443 \u044f [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":29120,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-38822","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/reshenie-zadaniya-s-pwnable-kr-25-otp-ogranichenie-ramera-fajla-v-linux\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"da_DK\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0420\u0435\u0448\u0435\u043d\u0438\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0441 pwnable.kr 25 \u2014 otp. \u041e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435 \u0440\u0430\u043c\u0435\u0440\u0430 \u0444\u0430\u0439\u043b\u0430 \u0432 Linux | ProHoster\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/reshenie-zadaniya-s-pwnable-kr-25-otp-ogranichenie-ramera-fajla-v-linux\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:26:11+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:26:11+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47L\u00f8sningen p\u00e5 opgaven fra pwnable.kr 25 \u2014 otp. Begr\u00e6nsning af filst\u00f8rrelse i Linux | ProHoster","description":"","canonical_url":"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/reshenie-zadaniya-s-pwnable-kr-25-otp-ogranichenie-ramera-fajla-v-linux","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"da_DK","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0420\u0435\u0448\u0435\u043d\u0438\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0441 pwnable.kr 25 \u2014 otp. \u041e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435 \u0440\u0430\u043c\u0435\u0440\u0430 \u0444\u0430\u0439\u043b\u0430 \u0432 Linux | ProHoster","og:url":"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/reshenie-zadaniya-s-pwnable-kr-25-otp-ogranichenie-ramera-fajla-v-linux","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:26:11+00:00","article:modified_time":"2019-10-31T19:26:11+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"38822","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-23 23:33:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:01:37","updated":"2026-01-23 23:33:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/38822","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/comments?post=38822"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/38822\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/media\/29120"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/media?parent=38822"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/categories?post=38822"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/tags?post=38822"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}