Сейчас на форуме: tyns777, cppasm, dutyfree, asfa (+7 невидимых)

 eXeL@B —› Вопросы новичков —› Секция .gfids
. 1 . 2 . >>
Посл.ответ Сообщение

Ранг: 16.3 (новичок), 2thx
Активность: 0.150.22
Статус: Участник

Создано: 07 марта 2017 00:01
· Личное сообщение · #1

А что это за секция и что в ней содержится? Компилятор Visual Studio всегда ее создает. Нигде не нашел ее описания.




Ранг: 605.2 (!), 341thx
Активность: 0.470.25
Статус: Модератор
Research & Development

Создано: 07 марта 2017 00:18
· Личное сообщение · #2

Скорее всего она появляется при отладочной сборке.

PE Section names – re-visited
.gfids – section added by new Visual Studio (14.0); purpose unknown
.giats – section added by new Visual Studio (14.0); purpose unknown
.gljmp – section added by new Visual Studio (14.0); purpose unknown

-----
EnJoy!




Ранг: 16.3 (новичок), 2thx
Активность: 0.150.22
Статус: Участник

Создано: 07 марта 2017 00:34 · Поправил: zombi-vadim
· Личное сообщение · #3

Jupiter пишет:
Скорее всего она появляется при отладочной сборке.
Она появляется и при сборке Deubg так и при Release, у меня всегда содержит пару строчек кода и буфер заполненный нулями. И как этот мусор убрать из сборки ?
purpose unknown цель неизвестна!! Но цель то есть!!



Ранг: -0.7 (гость), 170thx
Активность: 0.540
Статус: Участник

Создано: 07 марта 2017 01:18
· Личное сообщение · #4

guard flag, в google: IMAGE_GUARD_FLAG_FID_SUPPRESSED или просто обновите компилятор, у вас видимо как раз тот самый сломанный билд который не реагирует на флаги защиты и включает ее даже со сброшенными флагами.




Ранг: 605.2 (!), 341thx
Активность: 0.470.25
Статус: Модератор
Research & Development

Создано: 07 марта 2017 01:23
· Личное сообщение · #5

zombi-vadim пишет:
И как этот мусор убрать из сборки ?

Добавь объединение секций к опциям линкера:
Code:
  1. /merge:.gfids=.data


-----
EnJoy!




Ранг: 16.3 (новичок), 2thx
Активность: 0.150.22
Статус: Участник

Создано: 07 марта 2017 01:45
· Личное сообщение · #6

Jupiter пишет:
Добавь объединение секций к опциям линкера:
Вы прям глаза открыли .... Добавить непонятный мусор в другую секцию. Я знаю как это делать, мне интересно что в ней. И почему shellstorm решил что у меня сломанный билд я вообще не понял!



Ранг: 431.7 (мудрец), 390thx
Активность: 0.730.32
Статус: Участник

Создано: 07 марта 2017 02:11 · Поправил: dosprog
· Личное сообщение · #7

Та секция чем-то мешает?
А то впечатление, что снесши голову, начинается плач по утраченным волосам.
Пользуйте MSVC 2.0 - там никакие "странные" секции не добавляются.

Jupiter пишет:
Самый простой вариант - слить с другой секцией

Или не трогать вовсе..

Скорее всего, то статические инициализированные переменные.

) Подключают тучи неведомых гигантских библиотек и ничего, как так и надо,
а тут какая-то секция..



| Сообщение посчитали полезным: elch


Ранг: 605.2 (!), 341thx
Активность: 0.470.25
Статус: Модератор
Research & Development

Создано: 07 марта 2017 02:15
· Личное сообщение · #8

zombi-vadim
То, что это мусор, ты сам решил.

Слить эту секцию с другой при компоновке - надёжнее, чем удалять её из готового файла.
Если в Release сборке со всеми оптимизациями эта секция остаётся, значит её лучше не удалять. Самый простой вариант - слить с другой секцией

-----
EnJoy!




Ранг: 16.3 (новичок), 2thx
Активность: 0.150.22
Статус: Участник

Создано: 07 марта 2017 19:53
· Личное сообщение · #9

dosprog пишет:
Та секция чем-то мешает?
Она мне не мешает абсолютно. Я просто хотел узнать какая информация в ней содержится и для чего используется. А если никто понятия не имеет то так и скажите.




Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 07 марта 2017 20:19
· Личное сообщение · #10

какая проблема взять и самому разобраться для чего эта секция и рассказать другим ?
pdb компилера доступны, вытягиваете, реверсите, и другим объясняете

автор красивых картинок устройства PE формата(кто знает) тоже в прошлом году пытался найти инфо по этой и другим новым секциям, не нашел

очень просто задавать вопросы, но намного интереснее быть тем кто умеет находить ответы на вопросы - ответы на котрых в гугле нет

| Сообщение посчитали полезным: plutos

Ранг: 33.4 (посетитель), 24thx
Активность: 0.020
Статус: Участник

Создано: 07 марта 2017 21:12 · Поправил: redlord
· Личное сообщение · #11

возможно, это Intel Cilk (gpu offload) маячит на горизонте?
Или телеметрия ;)




Ранг: 337.6 (мудрец), 224thx
Активность: 0.210.1
Статус: Участник
born to be evil

Создано: 07 марта 2017 21:53
· Личное сообщение · #12

redlord
не исключено. как вариант - пообщаться с девелоперами

-----
От многой мудрости много скорби, и умножающий знание умножает печаль





Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 07 марта 2017 22:14
· Личное сообщение · #13

вряд ли что то скажут
все же быстрее pdb вытянуть и посмотреть код где эта секция добавляется
наверняка там и название функции которая эту секцию добавляет будет осмысленной



Ранг: 16.3 (новичок), 2thx
Активность: 0.150.22
Статус: Участник

Создано: 07 марта 2017 22:47
· Личное сообщение · #14

reversecode пишет:
pdb компилера доступны, вытягиваете, реверсите, и другим объясняете
Угу если вы не заметили, я задаю вопрос в разделе новичков, если бы я был настолько крут чтобы сделать то что предложили вы, то скорее всего мне и форум этот был бы не интересен!




Ранг: 622.6 (!), 521thx
Активность: 0.330.89
Статус: Участник
_Вечный_Студент_

Создано: 08 марта 2017 00:44
· Личное сообщение · #15

zombi-vadim пишет:
если бы я был настолько крут


"Крутыми" не рождаются. Все где-то начинают.
Очень часто сама попытка найти решение, пусть даже не удачная, дает больше, чем любой готовый ответ.
Что и правда мешает взять и посмотреть?
А потом сказать: вот, пробовал то-то и то-то, узнал то-то, как интерпретировать?
Это все же лучше, чем тупо долбить один и тот же вопрос.

-----
Give me a HANDLE and I will move the Earth.




Ранг: -0.7 (гость), 170thx
Активность: 0.540
Статус: Участник

Создано: 08 марта 2017 09:44
· Личное сообщение · #16

zombi-vadim пишет: И почему shellstorm решил что у меня сломанный билд я вообще не понял!

Потому что в предыдущим билде опции нужно было специально выставлять, чтобы появилась эта секция или секция cfg, следующий билд оказался сломан опции не отключаются.
zombi-vadim пишет: настолько крут чтобы сделать то что предложили вы

Вот я могу, даже давно сделал и выше написал для чего эта секция, неужели так сложно нагуглить опции защиты, а после прочитать несколько статей по отдельным опциям?
Это нужно, чтобы всякие киндеры не срывали стек и не переполняли буфер.
Мне лень расписывать подробности, но если интересно разобраться вот прям в деталях, откройте в IDA link.exe студийный, отфильтруйте функции по слову "Guard". Но раз такие сложности в простых вещах, значит вам это еще незачем знать.



Ранг: 16.3 (новичок), 2thx
Активность: 0.150.22
Статус: Участник

Создано: 08 марта 2017 19:39
· Личное сообщение · #17

shellstormЯ знаю про Control Flow Guard, просто как то не вяжется cfg с gfids. Я не вдавался в подробности, но после отключения cfg, файл уменьшается в размерах, значит флаг работает теоретически. Однако никакого влияния на секцию gfids это не оказывает она остается прежней и в размерах и в содержимом. Вы уверены что правы?




Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 08 марта 2017 19:51
· Личное сообщение · #18

выкладывайте весь компилер длл екзе, я сам посмотрю что там кто генерит



Ранг: 16.3 (новичок), 2thx
Активность: 0.150.22
Статус: Участник

Создано: 08 марта 2017 22:34 · Поправил: zombi-vadim
· Личное сообщение · #19

reversecode пишет:
выкладывайте весь компилер длл екзе
Вам нужен весь проект? Максимальный размер аттача 500кб..



Ранг: 431.7 (мудрец), 390thx
Активность: 0.730.32
Статус: Участник

Создано: 08 марта 2017 22:43 · Поправил: dosprog
· Личное сообщение · #20

zombi-vadim пишет:
Максимальный размер аттача 500кб..

--> Link1 <-- --> Link2 <--



Ранг: 16.3 (новичок), 2thx
Активность: 0.150.22
Статус: Участник

Создано: 08 марта 2017 22:52 · Поправил: zombi-vadim
· Личное сообщение · #21

dosprog--> Link <--




Ранг: 337.5 (мудрец), 348thx
Активность: 2.112.42
Статус: Участник

Создано: 08 марта 2017 22:53 · Поправил: difexacaw
· Личное сообщение · #22

zombi-vadim

При использовании CFG поведение приложения сильно отличается. Нельзя произвольно что то вызвать(что далее приведёт к проблемам). Ну и в студии по дефолту линкуется всякое дерьмо.

-----
vx




Ранг: 16.3 (новичок), 2thx
Активность: 0.150.22
Статус: Участник

Создано: 08 марта 2017 23:07
· Личное сообщение · #23

difexacaw пишет:
в студии по дефолту линкуется всякое дерьмо
Я понимаю, что по умолчанию, всякая ненужная гадость добавляется в файл, но где бы я не спрашивал как оптимизировать настройки линковщика, мне отвечают, раз он что то создает то трогать это нельзя, оно значит нужно для корректной работы..




Ранг: 337.5 (мудрец), 348thx
Активность: 2.112.42
Статус: Участник

Создано: 08 марта 2017 23:10
· Личное сообщение · #24

zombi-vadim

Это не правильный совет что трогать не нужно. Без понимания что и зачем линкуется приложение будет анстаб. Нужно найти ссылки на то, что добавляется в модуль. Если прямых ссылок нет, то следует посмотреть сам формат - скорее всего это поддержка новых механизмов(CFG, RFG etc).

-----
vx




Ранг: 16.3 (новичок), 2thx
Активность: 0.150.22
Статус: Участник

Создано: 08 марта 2017 23:10
· Личное сообщение · #25

difexacaw пишет:
При использовании CFG поведение приложения сильно отличается. Нельзя произвольно что то вызвать(что далее приведёт к проблемам)
Нельзя ли пожалуйста обьяснить какие проблемы появляются, потому как этот флаг включен в студии по умолчанию.




Ранг: 337.5 (мудрец), 348thx
Активность: 2.112.42
Статус: Участник

Создано: 08 марта 2017 23:14
· Личное сообщение · #26

zombi-vadim

Включается механизм валидации ссылок через карту в памяти, описывающую начало каждой процедуры в модуле. При любом косвенном вызове - передаче управления не на начало процедуры приложение будет убито.

-----
vx





Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 08 марта 2017 23:15
· Личное сообщение · #27

мне не проект нужен, мне нужен компилер который это генерит, линкер итд



Ранг: 16.3 (новичок), 2thx
Активность: 0.150.22
Статус: Участник

Создано: 08 марта 2017 23:27
· Личное сообщение · #28

reversecode пишет:
мне нужен компилер который это генерит, линкер итд
Я уже говорил что я новичок. Я много не понимаю. У меня стоит Visual Studio 2015. Что конкретно и откуда вам скинуть?




Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 08 марта 2017 23:33
· Личное сообщение · #29

VC\bin\* для начала



Ранг: 431.7 (мудрец), 390thx
Активность: 0.730.32
Статус: Участник

Создано: 08 марта 2017 23:35 · Поправил: dosprog
· Личное сообщение · #30

Code:
  1. ;;testfile.exe
  2. .gfids
  3. @42E000:
  4. dd 00000D760h,00000D745h,00000DBE3h,00000DBC9h ;@00000000
  5. dd 00000DBE6h,00000DBE3h,00000DC34h,00000DBE3h ;@00000010
  6. dd 0000165AEh,00000DBE3h,00000DE4Dh,000011993h ;@00000020
  7. dd 00001193Dh,0000102E5h,0000102B9h,00000DC2Bh ;@00000030
  8. dd 00001316Ah,000013159h,00000AD54h,00000ACFCh ;@00000040
  9. dd 00000DBE3h,00000DBE3h,0000116BDh,000011610h ;@00000050
  10. dd 00000DBEEh,00000DBB7h,000017CDEh,000017725h ;@00000060
  11. dd 000017300h,00000C113h,0000065EDh,0000065EDh ;@00000070
  12. dd 00001009Bh,000010E51h,00000AE3Ah,00000AF12h ;@00000080
  13. dd 000015C26h,00000E0E3h,00001836Fh,000018659h ;@00000090
  14. ... etc ...

Это массив адресов RVA.
Если пройти по этим адресам, то каждый указывает на какую-то из процедур в модуле.
Это может быть отладочная информация, может быть что угодно.
Но удалять её нельзя. Чтобы убедиться в этом, достаточно обнулить этот массив.

Полистайте .map-файл. Там тоже бывает полезная информация.

--Добавлено--
Вон выше уже написали, что это такое.

У меня этот модуль всё равно не запускается, так что проверить не смогу.

И пускай бы это была самая грязная "грязь" в том файле..
Ерунда это всё короче.


. 1 . 2 . >>
 eXeL@B —› Вопросы новичков —› Секция .gfids
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати