首页 > 代码库 > 2017年陕西省网络空间安全技术大赛——人民的名义-抓捕赵德汉1——Writeup

2017年陕西省网络空间安全技术大赛——人民的名义-抓捕赵德汉1——Writeup

  • 下载文件,die和binwalk都显示文件确实是jar包

    技术分享

  • 运行,观察外部特征:

    技术分享

    是一个要求输入正确password的程序

  • jd-jui打开jar包,分析代码逻辑,找到两端关键代码:

     
     
     
     
     
    x
     
     
     
      public static void main(String[] args)
        throws ClassNotFoundException, InstantiationException, IllegalAccessException, IOException, NoSuchAlgorithmException, NoSuchPaddingException, InvalidKeyException, IllegalBlockSizeException, BadPaddingException
      {
        CheckInterface checkerObject = loadCheckerObject();
        
        BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in));
        for (;;)
        {
          System.out.println("Enter password:");
          String line = stdin.readLine();
          if (checkerObject.checkPassword(line))
          {
            System.out.println("Well done, that is the correct password");
            System.exit(0);
          }
          else
          {
            System.out.println("Incorrect password");
          }
        }
      }
     
     

     

     
     
     
     
     
    x
     
     
    publicbooleancheckPassword(Stringinput)
      {
        MessageDigestmd5Obj=null;
        try
        {
          md5Obj=MessageDigest.getInstance("MD5");
        }
        catch (NoSuchAlgorithmExceptione)
        {
          System.out.println("Hash Algorithm not supported");
          System.exit(-1);
        }
        byte[] hashBytes=newbyte[40];
        md5Obj.update(input.getBytes(), 0, input.length());
        hashBytes=md5Obj.digest();
        returnbyteArrayToHexString(hashBytes).equals("fa3733c647dca53a66cf8df953c2d539");
      }
     
     
  • 解题的思路如下:

    技术分享

  • 那么只需将字符串fa3733c647dca53a66cf8df953c2d539进行MD5解密即可

    技术分享

  • flag即为flag{monkey99}

 

本题中虽然定义的函数很多,但从主函数逐个分析可以看出关键的只有两个

checkPassword()函数中调用了大量的Java库函数,看不懂的函数百度即可

<style>html,body { } .CodeMirror { height: auto } .CodeMirror-scroll { } .CodeMirror-lines { padding: 4px 0px } .CodeMirror pre { } .CodeMirror-scrollbar-filler,.CodeMirror-gutter-filler { background-color: white } .CodeMirror-gutters { border-right: 1px solid rgb(221, 221, 221); background-color: rgb(247, 247, 247); white-space: nowrap } .CodeMirror-linenumbers { } .CodeMirror-linenumber { padding: 0px 3px 0px 5px; text-align: right; color: rgb(153, 153, 153) } .CodeMirror div.CodeMirror-cursor { border-left: 1px solid black; z-index: 3 } .CodeMirror div.CodeMirror-secondarycursor { border-left: 1px solid silver } .CodeMirror.cm-keymap-fat-cursor div.CodeMirror-cursor { width: auto; border: 0px; background: rgb(119, 238, 119); z-index: 1 } .CodeMirror div.CodeMirror-cursor.CodeMirror-overwrite { } .cm-tab { display: inline-block } .cm-s-typora-default .cm-header,.cm-s-typora-default .cm-property { color: rgb(217, 79, 138) } .cm-s-typora-default pre.cm-header1:not(.cm-atom) :not(.cm-overlay) { font-size: 2rem; line-height: 2rem } .cm-s-typora-default pre.cm-header2:not(.cm-atom) :not(.cm-overlay) { font-size: 1.4rem; line-height: 1.4rem } .cm-s-typora-default .cm-atom,.cm-s-typora-default .cm-number { color: rgb(149, 132, 134) } .cm-s-typora-default .cm-table-row,.cm-s-typora-default .cm-block-start { font-family: monospace } .cm-s-typora-default .cm-comment,.cm-s-typora-default .cm-code { color: rgb(74, 90, 159); font-family: monospace } .cm-s-typora-default .cm-tag { color: rgb(169, 68, 66) } .cm-s-typora-default .cm-string { color: rgb(126, 134, 169) } .cm-s-typora-default .cm-link { color: rgb(196, 122, 15); text-decoration: underline } .cm-s-typora-default .cm-variable-2,.cm-s-typora-default .cm-variable-1 { color: inherit } .cm-s-typora-default .cm-overlay { font-size: 1rem; font-family: monospace } .CodeMirror.cm-s-typora-default div.CodeMirror-cursor { border-left: 3px solid rgb(228, 98, 154) } .cm-s-typora-default .CodeMirror-activeline-background { left: -60px; right: -30px; background: rgba(204, 204, 204, 0.2) } .cm-s-typora-default .CodeMirror-gutters { border-right: none; background-color: inherit } .cm-s-typora-default .cm-trailing-space-new-line::after,.cm-startspace::after,.cm-starttab .cm-tab::after { content: "?"; position: absolute; left: 0px; opacity: 0; font-family: LetterGothicStd, monospace } .os-windows .cm-startspace::after,.os-windows .cm-starttab .cm-tab::after { left: -0.1em } .cm-starttab .cm-tab::after { content: " " } .cm-startspace,.cm-tab,.cm-starttab,.cm-trailing-space-a,.cm-trailing-space-b,.cm-trailing-space-new-line { font-family: monospace; position: relative } .cm-s-typora-default .cm-trailing-space-new-line::after { content: "↓"; opacity: 0.3 } .cm-s-inner .cm-keyword { color: rgb(119, 0, 136) } .cm-s-inner .cm-atom,.cm-s-inner.cm-atom { color: rgb(34, 17, 153) } .cm-s-inner .cm-number { color: rgb(17, 102, 68) } .cm-s-inner .cm-def { color: rgb(0, 0, 255) } .cm-s-inner .cm-variable { color: black } .cm-s-inner .cm-variable-2 { color: rgb(0, 85, 170) } .cm-s-inner .cm-variable-3 { color: rgb(0, 136, 85) } .cm-s-inner .cm-property { color: black } .cm-s-inner .cm-operator { color: rgb(152, 26, 26) } .cm-s-inner .cm-comment,.cm-s-inner.cm-comment { color: rgb(170, 85, 0) } .cm-s-inner .cm-string { color: rgb(170, 17, 17) } .cm-s-inner .cm-string-2 { color: rgb(255, 85, 0) } .cm-s-inner .cm-meta { color: rgb(85, 85, 85) } .cm-s-inner .cm-qualifier { color: rgb(85, 85, 85) } .cm-s-inner .cm-builtin { color: rgb(51, 0, 170) } .cm-s-inner .cm-bracket { color: rgb(153, 153, 119) } .cm-s-inner .cm-tag { color: rgb(17, 119, 0) } .cm-s-inner .cm-attribute { color: rgb(0, 0, 204) } .cm-s-inner .cm-header,.cm-s-inner.cm-header { color: blue } .cm-s-inner .cm-quote,.cm-s-inner.cm-quote { color: rgb(0, 153, 0) } .cm-s-inner .cm-hr,.cm-s-inner.cm-hr { color: rgb(153, 153, 153) } .cm-s-inner .cm-link,.cm-s-inner.cm-link { color: rgb(0, 0, 204) } .cm-negative { color: rgb(221, 68, 68) } .cm-positive { color: rgb(34, 153, 34) } .cm-header,.cm-strong { font-weight: bold } .cm-del { text-decoration: line-through } .cm-em { font-style: italic } .cm-link { text-decoration: underline } .cm-error { color: rgb(255, 0, 0) } .cm-invalidchar { color: rgb(255, 0, 0) } .cm-constant { color: rgb(38, 139, 210) } .cm-defined { color: rgb(181, 137, 0) } div.CodeMirror span.CodeMirror-matchingbracket { color: rgb(0, 255, 0) } div.CodeMirror span.CodeMirror-nonmatchingbracket { color: rgb(255, 34, 34) } .cm-s-inner .CodeMirror-activeline-background { background: inherit } .CodeMirror { position: relative; overflow: hidden } .CodeMirror-scroll { margin-bottom: -30px; margin-right: -30px; padding-bottom: 30px; padding-right: 30px; height: 100%; outline: none; position: relative } .CodeMirror-sizer { position: relative } .CodeMirror-vscrollbar,.CodeMirror-hscrollbar,.CodeMirror-scrollbar-filler,.CodeMirror-gutter-filler { position: absolute; z-index: 6; display: none } .CodeMirror-vscrollbar { right: 0px; top: 0px } .CodeMirror-hscrollbar { bottom: 0px; left: 0px } .CodeMirror-scrollbar-filler { right: 0px; bottom: 0px } .CodeMirror-gutter-filler { left: 0px; bottom: 0px } .CodeMirror-gutters { position: absolute; left: 0px; top: 0px; padding-bottom: 30px; z-index: 3 } .CodeMirror-gutter { white-space: normal; height: 100%; padding-bottom: 30px; margin-bottom: -32px; display: inline-block } .CodeMirror-gutter-elt { position: absolute; cursor: default; z-index: 4 } .CodeMirror-lines { cursor: text } .CodeMirror pre { border-width: 0px; background: transparent; font-family: inherit; font-size: inherit; margin: 0px; white-space: pre; color: inherit; z-index: 2; position: relative; overflow: visible } .CodeMirror-wrap pre { white-space: pre-wrap } .CodeMirror-code pre { border-right: 30px solid transparent; width: fit-content } .CodeMirror-wrap .CodeMirror-code pre { border-right: none; width: auto } .CodeMirror-linebackground { position: absolute; left: 0px; right: 0px; top: 0px; bottom: 0px; z-index: 0 } .CodeMirror-linewidget { position: relative; z-index: 2; overflow: auto } .CodeMirror-widget { } .CodeMirror-wrap .CodeMirror-scroll { } .CodeMirror-measure { position: absolute; width: 100%; height: 0px; overflow: hidden; visibility: hidden } .CodeMirror-measure pre { position: static } .CodeMirror div.CodeMirror-cursor { position: absolute; visibility: hidden; border-right: none; width: 0px } .CodeMirror div.CodeMirror-cursor { visibility: hidden } .CodeMirror-focused div.CodeMirror-cursor { visibility: inherit } .CodeMirror-selected { background: rgb(217, 217, 217) } .CodeMirror-focused .CodeMirror-selected { background: rgb(215, 212, 240) } .cm-searching { background: rgba(255, 255, 0, 0.4) } .CodeMirror span { } .CodeMirror-lint-markers { width: 16px } .CodeMirror-lint-tooltip { background-color: infobackground; border: 1px solid black; color: infotext; font-family: monospace; overflow: hidden; padding: 2px 5px; position: fixed; white-space: pre-wrap; z-index: 10000; max-width: 600px; opacity: 0; font-size: 0.8em } .CodeMirror-lint-mark-error,.CodeMirror-lint-mark-warning { background-position: left bottom; background-repeat: repeat-x } .CodeMirror-lint-mark-error { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAADCAYAAAC09K7GAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9sJDw4cOCW1/KIAAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAAAHElEQVQI12NggIL/DAz/GdA5/xkY/qPKMDAwAADLZwf5rvm+LQAAAABJRU5ErkJggg==") } .CodeMirror-lint-marker-error,.CodeMirror-lint-marker-warning { background-position: center center; background-repeat: no-repeat; cursor: pointer; display: inline-block; height: 16px; width: 16px; vertical-align: middle; position: relative } .CodeMirror-lint-message-error,.CodeMirror-lint-message-warning { padding-left: 18px; background-position: left top; background-repeat: no-repeat } .CodeMirror-lint-marker-error,.CodeMirror-lint-message-error { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAHlBMVEW7AAC7AACxAAC7AAC7AAAAAAC4AAC5AAD///+7AAAUdclpAAAABnRSTlMXnORSiwCK0ZKSAAAATUlEQVR42mWPOQ7AQAgDuQLx/z8csYRmPRIFIwRGnosRrpamvkKi0FTIiMASR3hhKW+hAN6/tIWhu9PDWiTGNEkTtIOucA5Oyr9ckPgAWm0GPBog6v4AAAAASUVORK5CYII=") } .CodeMirror-lint-marker-warning,.CodeMirror-lint-message-warning { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAANlBMVEX/uwDvrwD/uwD/uwD/uwD/uwD/uwD/uwD/uwD6twD/uwAAAADurwD2tQD7uAD+ugAAAAD/uwDhmeTRAAAADHRSTlMJ8mN1EYcbmiixgACm7WbuAAAAVklEQVR42n3PUQqAIBBFUU1LLc3u/jdbOJoW1P08DA9Gba8+YWJ6gNJoNYIBzAA2chBth5kLmG9YUoG0NHAUwFXwO9LuBQL1giCQb8gC9Oro2vp5rncCIY8L8uEx5ZkAAAAASUVORK5CYII=") } .CodeMirror-lint-marker-multiple { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAHCAMAAADzjKfhAAAACVBMVEUAAAAAAAC/v7914kyHAAAAAXRSTlMAQObYZgAAACNJREFUeNo1ioEJAAAIwmz/H90iFFSGJgFMe3gaLZ0od+9/AQZ0ADosbYraAAAAAElFTkSuQmCC"); background-repeat: no-repeat; background-position: right bottom; width: 100%; height: 100% } html { font-size: 14px; background-color: rgb(255, 255, 255); color: rgb(51, 51, 51) } body { margin: 0px; padding: 0px; height: auto; bottom: 0px; top: 0px; left: 0px; right: 0px; font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 1rem; line-height: 1.42857; background: inherit } a:active,a:hover { outline: 0px } .in-text-selection,::selection { background: rgb(181, 214, 252) } #write { margin: 0px auto; height: auto; width: inherit; position: relative; padding-bottom: 70px; white-space: pre-wrap } .for-image #write { padding-left: 8px; padding-right: 8px } body.typora-export { padding-left: 30px; padding-right: 30px } .typora-export #write { margin: 0px auto } #write>p:first-child,#write>ul:first-child,#write>ol:first-child,#write>pre:first-child,#write>blockquote:first-child,#write>div:first-child,#write>table:first-child { margin-top: 30px } #write li>table:first-child { margin-top: -20px } img { max-width: 100%; vertical-align: middle } input,button,select,textarea { color: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; font-size: inherit; line-height: inherit; font-family: inherit } input[type="checkbox"],input[type="radio"] { line-height: normal; padding: 0px } ::before,::after,* { } #write p,#write h1,#write h2,#write h3,#write h4,#write h5,#write h6,#write div,#write pre { width: inherit } #write p,#write h1,#write h2,#write h3,#write h4,#write h5,#write h6 { position: relative } h1 { font-size: 2rem } h2 { font-size: 1.8rem } h3 { font-size: 1.6rem } h4 { font-size: 1.4rem } h5 { font-size: 1.2rem } h6 { font-size: 1rem } p { } .mathjax-block { margin-top: 0px; margin-bottom: 0px } .hidden { display: none } .md-blockmeta { color: rgb(204, 204, 204); font-weight: bold; font-style: italic } a { cursor: pointer } #write input[type="checkbox"] { cursor: pointer; width: inherit; height: inherit; margin: 4px 0px 0px } tr { } thead { display: table-header-group } table { border-collapse: collapse; border-spacing: 0px; width: 100%; overflow: auto; text-align: left } table.md-table td { min-width: 80px } .CodeMirror-gutters { border-right: 0px; background-color: inherit } .CodeMirror { text-align: left } .CodeMirror-placeholder { opacity: 0.3 } .CodeMirror pre { padding: 0px 4px } .CodeMirror-lines { padding: 0px } div.hr:focus { cursor: none } pre { white-space: pre-wrap } .CodeMirror-gutters { margin-right: 4px } .md-fences { font-size: 0.9rem; display: block; text-align: left; overflow: visible; white-space: pre; background: inherit; position: relative !important } .md-diagram-panel { width: 100%; margin-top: 10px; text-align: center; padding-top: 0px; padding-bottom: 8px } .md-fences .CodeMirror.CodeMirror-wrap { top: -1.6em; margin-bottom: -1.6em } .md-fences.mock-cm { white-space: pre-wrap } .show-fences-line-number .md-fences { padding-left: 0px } .show-fences-line-number .md-fences.mock-cm { padding-left: 40px } .footnotes { opacity: 0.8; font-size: 0.9rem; padding-top: 1em; padding-bottom: 1em } .footnotes+.footnotes { margin-top: -1em } .md-reset { margin: 0px; padding: 0px; border: 0px; outline: 0px; vertical-align: top; background: transparent; text-decoration: none; float: none; position: static; width: auto; height: auto; white-space: nowrap; cursor: inherit; line-height: normal; font-weight: normal; text-align: left; direction: ltr } li div { padding-top: 0px } blockquote { margin: 1rem 0px } li p,li .mathjax-block { margin: 0.5rem 0px } li { margin: 0px; position: relative } blockquote>:last-child { margin-bottom: 0px } blockquote>:first-child { margin-top: 0px } .footnotes-area { color: rgb(136, 136, 136); margin-top: 0.714rem; padding-bottom: 0.143rem } .footnote-line { margin-top: 0.714em; font-size: 0.7em } a img,img a { cursor: pointer } pre.md-meta-block { font-size: 0.8rem; min-height: 2.86rem; white-space: pre-wrap; background: rgb(204, 204, 204); display: block } p .md-image:only-child { display: inline-block; width: 100%; text-align: center } #write .MathJax_Display { margin: 0.8em 0px 0px } .mathjax-block { white-space: pre; overflow: hidden; width: 100% } p+.mathjax-block { margin-top: -1.143rem } .mathjax-block:not(:empty)::after { display: none } [contenteditable="true"]:active,[contenteditable="true"]:focus { outline: none } .task-list { list-style-type: none } .task-list-item { position: relative; padding-left: 1em } .task-list-item input { position: absolute; top: 0px; left: 0px } .math { font-size: 1rem } .md-toc { min-height: 3.58rem; position: relative; font-size: 0.9rem } .md-toc-content { position: relative; margin-left: 0px } .md-toc::after,.md-toc-content::after { display: none } .md-toc-item { display: block; color: rgb(65, 131, 196); text-decoration: none } .md-toc-inner:hover { } .md-toc-inner { display: inline-block; cursor: pointer } .md-toc-h1 .md-toc-inner { margin-left: 0px; font-weight: bold } .md-toc-h2 .md-toc-inner { margin-left: 2em } .md-toc-h3 .md-toc-inner { margin-left: 4em } .md-toc-h4 .md-toc-inner { margin-left: 6em } .md-toc-h5 .md-toc-inner { margin-left: 8em } .md-toc-h6 .md-toc-inner { margin-left: 10em } a.md-toc-inner { font-size: inherit; font-style: inherit; font-weight: inherit; line-height: inherit } .footnote-line a:not(.reversefootnote) { color: inherit } .md-attr { display: none } .md-fn-count::after { content: "." } .md-tag { opacity: 0.5 } .md-comment { color: rgb(162, 127, 3); opacity: 0.8; font-family: monospace } code { text-align: left } h1 .md-tag,h2 .md-tag,h3 .md-tag,h4 .md-tag,h5 .md-tag,h6 .md-tag { font-weight: initial; opacity: 0.35 } a.md-print-anchor { border-width: initial !important; border-style: none !important; border-color: initial !important; display: inline-block !important; position: absolute !important; width: 1px !important; right: 0px !important; outline: none !important; background: transparent !important; text-decoration: initial !important } .md-inline-math .MathJax_SVG .noError { display: none !important } .mathjax-block .MathJax_SVG_Display { text-align: center; margin: 1em 0em; position: relative; text-indent: 0px; max-width: none; max-height: none; min-height: 0px; min-width: 100%; width: auto; display: block !important } .MathJax_SVG_Display,.md-inline-math .MathJax_SVG_Display { width: auto; margin: inherit; display: inline-block !important } .MathJax_SVG .MJX-monospace { font-family: monospace } .MathJax_SVG .MJX-sans-serif { font-family: sans-serif } .MathJax_SVG { display: inline; font-style: normal; font-weight: normal; line-height: normal; text-indent: 0px; text-align: left; text-transform: none; letter-spacing: normal; word-spacing: normal; white-space: nowrap; float: none; direction: ltr; max-width: none; max-height: none; min-width: 0px; min-height: 0px; border: 0px; padding: 0px; margin: 0px } .MathJax_SVG * { } html { font-size: 16px } body { font-family: "Open Sans", "Clear Sans", "Helvetica Neue", Helvetica, Arial, sans-serif; color: rgb(51, 51, 51); line-height: 1.6 } #write { max-width: 860px; margin: 0px auto; padding: 20px 30px 100px } #write>ul:first-child,#write>ol:first-child { margin-top: 30px } body>:first-child { margin-top: 0px !important } body>:last-child { margin-bottom: 0px !important } a { color: rgb(65, 131, 196) } h1,h2,h3,h4,h5,h6 { position: relative; margin-top: 1rem; margin-bottom: 1rem; font-weight: bold; line-height: 1.4; cursor: text } h1:hover a.anchor,h2:hover a.anchor,h3:hover a.anchor,h4:hover a.anchor,h5:hover a.anchor,h6:hover a.anchor { text-decoration: none } h1 tt,h1 code { font-size: inherit } h2 tt,h2 code { font-size: inherit } h3 tt,h3 code { font-size: inherit } h4 tt,h4 code { font-size: inherit } h5 tt,h5 code { font-size: inherit } h6 tt,h6 code { font-size: inherit } h1 { padding-bottom: 0.3em; font-size: 2.25em; line-height: 1.2; border-bottom: 1px solid rgb(238, 238, 238) } h2 { padding-bottom: 0.3em; font-size: 1.75em; line-height: 1.225; border-bottom: 1px solid rgb(238, 238, 238) } h3 { font-size: 1.5em; line-height: 1.43 } h4 { font-size: 1.25em } h5 { font-size: 1em } h6 { font-size: 1em; color: rgb(119, 119, 119) } p,blockquote,ul,ol,dl,table { margin: 0.8em 0px } li>ol,li>ul { margin: 0px } hr { height: 4px; padding: 0px; margin: 16px 0px; background-color: rgb(231, 231, 231); border-width: 0px 0px 1px; border-style: none none solid; border-top-color: initial; border-right-color: initial; border-left-color: initial; overflow: hidden; border-bottom-color: rgb(221, 221, 221) } body>h2:first-child { margin-top: 0px; padding-top: 0px } body>h1:first-child { margin-top: 0px; padding-top: 0px } body>h1:first-child+h2 { margin-top: 0px; padding-top: 0px } body>h3:first-child,body>h4:first-child,body>h5:first-child,body>h6:first-child { margin-top: 0px; padding-top: 0px } a:first-child h1,a:first-child h2,a:first-child h3,a:first-child h4,a:first-child h5,a:first-child h6 { margin-top: 0px; padding-top: 0px } h1 p,h2 p,h3 p,h4 p,h5 p,h6 p { margin-top: 0px } li p.first { display: inline-block } ul,ol { padding-left: 30px } ul:first-child,ol:first-child { margin-top: 0px } ul:last-child,ol:last-child { margin-bottom: 0px } blockquote { border-left: 4px solid rgb(221, 221, 221); padding: 0px 15px; color: rgb(119, 119, 119) } blockquote blockquote { padding-right: 0px } table { padding: 0px } table tr { border-top: 1px solid rgb(204, 204, 204); background-color: white; margin: 0px; padding: 0px } table tr:nth-child(2n) { background-color: rgb(248, 248, 248) } table tr th { font-weight: bold; border: 1px solid rgb(204, 204, 204); text-align: left; margin: 0px; padding: 6px 13px } table tr td { border: 1px solid rgb(204, 204, 204); text-align: left; margin: 0px; padding: 6px 13px } table tr th:first-child,table tr td:first-child { margin-top: 0px } table tr th:last-child,table tr td:last-child { margin-bottom: 0px } .CodeMirror-gutters { border-right: 1px solid rgb(221, 221, 221) } .md-fences,code,tt { border: 1px solid rgb(221, 221, 221); background-color: rgb(248, 248, 248); font-family: Consolas, "Liberation Mono", Courier, monospace; padding: 2px 4px 0px; font-size: 0.9em } .md-fences { margin-bottom: 15px; margin-top: 15px; padding: 8px 1em 6px } .task-list { padding-left: 0px } .task-list-item { padding-left: 32px } .task-list-item input { top: 3px; left: 8px } .md-fences { background-color: rgb(248, 248, 248) } #write pre.md-meta-block { padding: 1rem; font-size: 85%; line-height: 1.45; background-color: rgb(247, 247, 247); border: 0px; color: rgb(119, 119, 119); margin-top: 0px !important } .mathjax-block>.code-tooltip { bottom: 0.375rem } #write>h3.md-focus::before { left: -1.5625rem; top: 0.375rem } #write>h4.md-focus::before { left: -1.5625rem; top: 0.285714rem } #write>h5.md-focus::before { left: -1.5625rem; top: 0.285714rem } #write>h6.md-focus::before { left: -1.5625rem; top: 0.285714rem } .md-image>.md-meta { border: 1px solid rgb(221, 221, 221); font-family: Consolas, "Liberation Mono", Courier, monospace; padding: 2px 4px 0px; font-size: 0.9em; color: inherit } .md-tag { color: inherit } .md-toc { margin-top: 20px; padding-bottom: 20px } #typora-quick-open { border: 1px solid rgb(221, 221, 221); background-color: rgb(248, 248, 248) } #typora-quick-open-item { background-color: rgb(250, 250, 250); border-color: rgb(254, 254, 254) rgb(229, 229, 229) rgb(229, 229, 229) rgb(238, 238, 238); border-style: solid; border-width: 1px } #md-notification::before { top: 10px } .on-focus-mode blockquote { border-left-color: rgba(85, 85, 85, 0.117647) } header,.context-menu,.megamenu-content,footer { font-family: "Segoe UI", Arial, sans-serif }</style>

2017年陕西省网络空间安全技术大赛——人民的名义-抓捕赵德汉1——Writeup